Submission #944667

#TimeUsernameProblemLanguageResultExecution timeMemory
944667yhkhooChameleon's Love (JOI20_chameleon)C++17
40 / 100
15 ms480 KiB
#include "chameleon.h" #include <bits/stdc++.h> using namespace std; /* * ladies and gentlemen * your attention please * the fire alarm has been activated in the building * we are investigating the situation * please remain calm and standby for further instruction * thank you * * ladies and gentlemen * the emergency situation in the building is now under control * we regret any inconvenience caused * thank you */ void Solve(int N) { vector<int> l(N, -1), c(N, -1); vector<vector<int>> hm(2*N+1); for(int i=1; i<=2*N; i++){ for(int j=1; j<=2*N; j++){ if(j==i) continue; vector<int> s1 = {i, j}; if(Query(s1) == 1){ hm[i].push_back(j); } } } set<int> ad; vector<vector<int>> cringe(2*N+1); for(int i=1; i<=2*N; i++){ if(hm[i].size() == 0) continue; if(hm[i].size() == 1){ if(ad.count(i) || ad.count(hm[i].front())) continue; Answer(i, hm[i].front()); hm[hm[i].front()].clear(); ad.insert(i); ad.insert(hm[i].front()); } else{ for(int j=0; j<hm[i].size(); j++){ vector<int> s2; for(int k=0; k<hm[i].size(); k++){ if(k==j) continue; s2.push_back(hm[i][k]); } s2.push_back(i); if(Query(s2) == 1){ cringe[hm[i][j]].push_back(i); cringe[i].push_back(hm[i][j]); } } } } for(int i=1; i<=2*N; i++){ if(hm[i].size() == 3){ for(int j=0; j<3; j++){ if(!count(cringe[i].begin(), cringe[i].end(), hm[i][j])){ if(ad.count(i) || ad.count(hm[i][j])) continue; Answer(i, hm[i][j]); ad.insert(i); ad.insert(hm[i][j]); // hm[hm[i][j]].clear(); } } } } }

Compilation message (stderr)

chameleon.cpp: In function 'void Solve(int)':
chameleon.cpp:43:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   43 |             for(int j=0; j<hm[i].size(); j++){
      |                          ~^~~~~~~~~~~~~
chameleon.cpp:45:31: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   45 |                 for(int k=0; k<hm[i].size(); k++){
      |                              ~^~~~~~~~~~~~~
#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...