Submission #1141427

#TimeUsernameProblemLanguageResultExecution timeMemory
1141427hyl_kibouCoins (IOI17_coins)C++17
25 / 100
6 ms584 KiB
#include "coins.h" std::vector<int> coin_flips(std::vector<int> b, int c) { std::vector<int> flips; int a = c; int bin[8]; for(int i = 0; i<6; ++i){ bin[i] = a%2; a/=2; } int sum = b[0]; for(int i = 1; i<=6; ++i){ sum+= b[i]!=bin[i-1]; } if(sum<4){ if(b[0]){ flips.push_back(0); } for(int i = 1; i<=6; ++i){ if((b[i]!=bin[i-1])){ flips.push_back(i); } } } else{ if(!b[0]){ flips.push_back(0); } for(int i = 1; i<=6; ++i){ if((b[i]==bin[i-1])){ flips.push_back(i); } } } if(flips.size()==0){ flips.push_back(63); } return flips; } int find_coin(std::vector<int> b) { int sum = 0; int cat = 1; if (b[0] == 0) { for(int i = 1; i<=6; ++i){ sum+= b[i]*cat; cat*=2; } } else{ for(int i = 1; i<=6; ++i){ sum+= (!b[i])*cat; cat*=2; } } return sum; }
#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...