Submission #883471

#TimeUsernameProblemLanguageResultExecution timeMemory
883471dejandenibParrots (IOI11_parrots)C++17
81 / 100
847 ms15016 KiB
#include <bits/stdc++.h> #include "encoder.h" #include "encoderlib.h" using namespace std; long long mapa2[92400]; int broj = 0; map<long long ,int> mapa; void rec(int posledno, int n, long long s,int depth){ if(depth==n) { mapa[s]=broj; // mapa2[broj]=s; //cout<<s<<" "<<broj<<endl; broj++; return; } for(long long i =posledno;i<n;i++) { rec(i,n,s*10LL+i,depth+1); } } void rec2(int posledno, int n, long long s,int depth){ if(depth==n) { //mapa[s]=broj; mapa2[broj]=s; //cout<<s<<" "<<broj<<endl; broj++; return; } for(long long i =posledno;i<n;i++) { rec2(i,n,s*10LL+i,depth+1); } } void encode(int n, int a[]) { broj = 0; rec(0,10,0,0); for(int i =0;i<n;i++) { int k; k = 0; int tosend = 0; int x = i; for (int j=0;j<5;j++) { if ((i & (1<<j))>0) { tosend+=1<<k; } k+=1; } tosend<<=3; for (int j=0;j<8;j++) { if ( (a[i] & (1<<j))>0) { send(tosend+j); } } } }
#include <bits/stdc++.h> #include "decoder.h" #include "decoderlib.h" using namespace std; long long mapa2[92400]; int broj = 0; map<long long ,int> mapa; void rec(int posledno, int n, long long s,int depth){ if(depth==n) { mapa[s]=broj; // mapa2[broj]=s; //cout<<s<<" "<<broj<<endl; broj++; return; } for(long long i =posledno;i<n;i++) { rec(i,n,s*10LL+i,depth+1); } } void rec2(int posledno, int n, long long s,int depth){ if(depth==n) { //mapa[s]=broj; mapa2[broj]=s; //cout<<s<<" "<<broj<<endl; broj++; return; } for(long long i =posledno;i<n;i++) { rec2(i,n,s*10LL+i,depth+1); } } void decode(int n,int howmany2,int a[]){ broj = 0; rec(0,10,0,0); int to_be_output[321]; for (int i =0;i<n;i++) to_be_output[i]=0; for(int i = 0;i<howmany2;i++) { int value = 0; int k = 0; for (int j = 0;j<3;j++) { if (a[i] %2==1) value+=1<<k; k+=1; a[i]=a[i]/2; } value = 1<<value; int position=0; k = 0; for (int j = 0;j<5;j++) { if (a[i] %2==1) position+=1<<k; k+=1; a[i]=a[i]/2; } to_be_output[position]+=value; } for(int i =0;i<n;i++) output(to_be_output[i]); }

Compilation message (stderr)

encoder.cpp: In function 'void encode(int, int*)':
encoder.cpp:58:13: warning: unused variable 'x' [-Wunused-variable]
   58 |         int x = i;
      |             ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...