結果
問題 |
No.1121 Social Distancing in Cinema
|
ユーザー |
|
提出日時 | 2020-07-22 21:42:41 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 866 bytes |
コンパイル時間 | 617 ms |
コンパイル使用メモリ | 59,468 KB |
実行使用メモリ | 8,804 KB |
最終ジャッジ日時 | 2024-06-22 14:53:57 |
合計ジャッジ時間 | 11,259 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 44 TLE * 3 |
コンパイルメッセージ
main.cpp:8:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type] 8 | main() | ^~~~
ソースコード
#include<cstdio> #include<vector> #include<algorithm> using namespace std; int N; int X[3<<17],Y[3<<17]; bool ex[555][555]; main() { scanf("%d",&N); vector<pair<pair<int,int>,int> >A(N); for(int i=0;i<N;i++) { scanf("%d%d",&X[i],&Y[i]); A[i].first.first=X[i]; A[i].first.second=Y[i]; A[i].second=i; } sort(A.begin(),A.end()); vector<int>ans; int id=0; while(ans.size()*90<N) { while(id<N) { bool ok=true; int x=A[id].first.first,y=A[id].first.second; for(int dx=-9;ok&&dx<=9;dx++)for(int dy=-9;dy<=9;dy++) { if(x+dx>=0&&y+dy>=0&&dx*dx+dy*dy<100&&ex[x+dx][y+dy]) { ok=false; break; } } if(ok) { ans.push_back(A[id].second); ex[x][y]=true; break; } id++; } id++; } printf("%d\n",(int)ans.size()); for(int i=0;i<ans.size();i++)printf("%d%c",ans[i]+1,i+1==ans.size()?'\n':' '); }