Mistři v programování na #hovnokod

Od autorů jisté soutěže jako ukázkové řešení.

#include <bits/stdc++.h>
using namespace std;
#define PB push_back
#define ZERO (1e-10)
#define INF int(1e9+1)
#define CL(A,I) (memset(A,I,sizeof(A)))
#define DEB printf("DEB!\n");
#define D(X) cout<<"  "<<#X": "<<X<<endl;
#define EQ(A,B) (A+ZERO>B&&A-ZERO<B)
typedef long long ll;
typedef pair<ll,ll> pll;
typedef vector<int> vi;
typedef pair<int,int> ii;
typedef vector<ii> vii;
#define IN(n) int n;scanf("%d",&n);
#define FOR(i, m, n) for (int i(m); i < n; i++)
#define F(n) FOR(i,0,n)
#define FF(n) FOR(j,0,n)
#define FT(m, n) FOR(k, m, n)
#define aa first
#define bb second
void ga(int N,int *A){F(N)scanf("%d",A+i);}
#define LG (18)
#define MX (1<<LG)
#define P2(v) (!(v&(v-1)))
int N,Q,A[MX],a,b,X[MX];
struct rmq{
    int dp[LG+2][MX],XX,O=-1,G[MX];
    void ini(int*A,int n){
        if(!XX++)FT(1,MX)G[k]=O+=P2(k);
        F(n)dp[0][i]=i;
        FT(1,k-(1<<k)+n+1)F(n+1-(1<<k))
            if(A[dp[k-1][i]]<A[dp[k-1][i+(1<<(k-1))]])
                dp[k][i]=dp[k-1][i];
            else dp[k][i]=dp[k-1][i+(1<<(k-1))];
    }
    int qy(int*A,int L,int R){
        const int j=G[R-L+1];
        if(A[dp[j][L]]<=A[dp[j][R-(1<<j)+1]])
            return A[dp[j][L]];
        return A[dp[j][R-(1<<j)+1]];
    }
}R;
struct RMQ{
    int dp[MX][LG+2],G[MX],XX,O=-1;
    void ini(int*A,int n){
        if(!XX++)FT(1,MX)G[k]=O+=P2(k);
        F(n)dp[i][0]=i;
        FT(1,k-(1<<k)+n+1)F(n+1-(1<<k))
            if(A[dp[i][k-1]]>A[dp[i+(1<<(k-1))][k-1]])
                dp[i][k]=dp[i][k-1];
            else dp[i][k]=dp[i+(1<<(k-1))][k-1];      
    }
    int qy(int *A,int L,int R){
        int j(G[R-L+1]);
        if(A[dp[L][j]]>=A[dp[R-(1<<j)+1][j]])
            return dp[L][j];
        return dp[R-(1<<j)+1][j];
    }
}D;
void ass(){
    assert(min(N,Q)>0&&N<=2e5&&Q<=1e6);
    set<int> T;
    F(N)assert(!T.count(A[i])&&A[i]>=0&&A[i]<N),T.insert(A[i]);
}
int main(void){
    IN(_)F(_){
        scanf("%d%d",&N,&Q),ga(N,A),*X=*A,R.ini(A,N),D.ini(A,N),ass();
        FT(1,N)X[k]=X[k-1]^A[k];
        F(Q)scanf("%d%d",&a,&b),printf("%d\n%d\n%d\n",R.qy(A,a,b),D.qy(A,a,b),X[b]^(a?X[a-1]:0)),assert(a<=b&&a>=0&&b<N);
    }
    return 0;
}

Anonymous,

Jeden "VEARY serious problem with stack overflow error" na StackOverflow :-D

int isEven(long long number) 
{
    if (number > 1) 
    {
        return isEven(number - 2);
    }
    if (number == 1)
    {
        return false;
    }
    return true;
}

Anonymous,

Jak se na jedne nejmenovane vysoke skole v Brne zjistuje datum v C++

    // to add actual year of generated file
    time_t timeTmp = time(NULL);
    struct tm *actualTime = localtime(&timeTmp);
   templates["year"] = actualTime->tm_year + 1900;

Anonymous,


Anonymous,

Úlohou študenta bolo načítať 3 veľkosti strán trojuholníka, overiť či sa z takýchto strán dá zostrojiť trojuholník a ak áno, vypočítať jeho obvod.

#include <stdio.h>
#include <stdlib.h>

int main()
{   int a,b,c,d;
    printf("zadaj cislo a:\n");
    scanf ("%d",&a);
    printf("zadaj cislo b:\n");
    scanf ("%d",&b);
    printf("zadaj cislo c:\n");
    scanf ("%d",&c);

      if (c=a+b)
    {
           d=a+b+c;
           printf("obvod trojholnika je:%d.",d);
    }
      else
           printf("z tyhto cisel nemoze byt trojuholnik\n");
    return 0;
}

Anonymous,