Submission #446315

#TimeUsernameProblemLanguageResultExecution timeMemory
446315urd05Building Skyscrapers (CEOI19_skyscrapers)C++17
54 / 100
496 ms23868 KiB
#include <bits/stdc++.h> using namespace std; typedef pair<int,int> P; map<P,int> mp; map<P,bool> vis; set<P> s; int dx[8]={1,1,0,-1,-1,-1,0,1}; int dy[8]={0,1,1,1,0,-1,-1,-1}; int main() { int n,t; scanf("%d %d",&n,&t); for(int i=0;i<n;i++) { int x,y; scanf("%d %d",&x,&y); mp[P(x,y)]=i; } P st=(*mp.begin()).first; vis[st]=true; vector<int> ret; s.insert(st); while (!s.empty()) { P now=*s.begin(); s.erase(now); ret.push_back(mp[now]); int x=now.first; int y=now.second; for(int i=0;i<8;i++) { if (mp.find(P(x+dx[i],y+dy[i]))!=mp.end()&&!vis[P(x+dx[i],y+dy[i])]) { vis[P(x+dx[i],y+dy[i])]=true; s.insert(P(x+dx[i],y+dy[i])); } } } if (ret.size()!=n) { printf("NO"); } else { printf("YES\n"); for(int i=0;i<n;i++) { printf("%d\n",ret[i]+1); } } }

Compilation message (stderr)

skyscrapers.cpp: In function 'int main()':
skyscrapers.cpp:36:19: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   36 |     if (ret.size()!=n) {
      |         ~~~~~~~~~~^~~
skyscrapers.cpp:13:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   13 |     scanf("%d %d",&n,&t);
      |     ~~~~~^~~~~~~~~~~~~~~
skyscrapers.cpp:16:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   16 |         scanf("%d %d",&x,&y);
      |         ~~~~~^~~~~~~~~~~~~~~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...