# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
829615 | 2023-08-18T13:22:00 Z | FEDIKUS | Data Transfer (IOI19_transfer) | C++17 | 190 ms | 2496 KB |
#include "transfer.h" #include<bits/stdc++.h> using namespace std; vector<int> get_attachment(vector<int> source){ int dodajem=0; if(int(source.size())==63) dodajem=6; if(int(source.size())==255) dodajem=8; vector<int> novi; for(int i=0;i<dodajem;i++){ int sta=0; for(int j=0;j<int(source.size());j++){ if((j+1) & (1<<i)) sta^=source[j]; } novi.push_back(sta); } int sta=0; for(int i=0;i<int(novi.size());i++) sta^=novi[i]; novi.push_back(sta); for(int i:novi) source.push_back(i); return novi; } vector<int> retrieve(vector<int> data) { int dodajem=0; if(int(data.size())>100) dodajem=8; else dodajem=6; int kraj=0; for(int i=int(data.size())-dodajem-1;i<int(data.size());i++){ kraj^=data[i]; } if(kraj) return vector<int>(data.begin(),data.end()-dodajem-1); int koji=0; bool ima=false; for(int i=int(data.size())-dodajem-1;i<int(data.size())-1;i++){ int bit=i-(int(data.size()-dodajem-1)); int sta=0; for(int j=0;j<int(data.size())-dodajem-1;j++){ if((j+1) &(1<<bit)) sta^=data[j]; } if(sta!=data[i]){ ima=true; koji+=(1<<bit); } } koji--; if(koji>=0) data[koji]=1-data[koji]; return vector<int>(data.begin(),data.end()-dodajem-1); }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 4 ms | 640 KB | Output is correct |
2 | Correct | 5 ms | 640 KB | Output is correct |
3 | Correct | 4 ms | 804 KB | Output is correct |
4 | Correct | 4 ms | 640 KB | Output is correct |
5 | Correct | 5 ms | 640 KB | Output is correct |
6 | Correct | 5 ms | 640 KB | Output is correct |
7 | Correct | 4 ms | 640 KB | Output is correct |
8 | Correct | 4 ms | 708 KB | Output is correct |
9 | Correct | 4 ms | 640 KB | Output is correct |
10 | Correct | 5 ms | 648 KB | Output is correct |
11 | Correct | 3 ms | 636 KB | Output is correct |
12 | Correct | 5 ms | 640 KB | Output is correct |
13 | Correct | 4 ms | 724 KB | Output is correct |
14 | Correct | 4 ms | 640 KB | Output is correct |
15 | Correct | 4 ms | 640 KB | Output is correct |
16 | Correct | 4 ms | 652 KB | Output is correct |
17 | Correct | 3 ms | 640 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 158 ms | 2488 KB | Output is correct |
2 | Correct | 158 ms | 2496 KB | Output is correct |
3 | Correct | 146 ms | 2492 KB | Output is correct |
4 | Correct | 149 ms | 2492 KB | Output is correct |
5 | Correct | 174 ms | 2484 KB | Output is correct |
6 | Correct | 162 ms | 2484 KB | Output is correct |
7 | Correct | 157 ms | 2484 KB | Output is correct |
8 | Correct | 171 ms | 2492 KB | Output is correct |
9 | Correct | 190 ms | 2488 KB | Output is correct |
10 | Correct | 155 ms | 2484 KB | Output is correct |
11 | Correct | 159 ms | 2480 KB | Output is correct |
12 | Correct | 167 ms | 2488 KB | Output is correct |
13 | Correct | 150 ms | 2488 KB | Output is correct |
14 | Correct | 147 ms | 2484 KB | Output is correct |
15 | Correct | 150 ms | 2488 KB | Output is correct |
16 | Correct | 148 ms | 2492 KB | Output is correct |
17 | Correct | 153 ms | 2484 KB | Output is correct |
18 | Correct | 145 ms | 2496 KB | Output is correct |
19 | Correct | 148 ms | 2484 KB | Output is correct |