提出 #34662441
ソースコード 拡げる
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define rep(i,a,n) for (ll i=a;i<(ll)n;i++)
ll read(){ll r;scanf("%lld",&r);return r;}
const ll MAXY = 2e9;
int dx[] = {-1,-1,-1, 0, 0, 0, 1, 1, 1};
int dy[] = {-1, 0, 1,-1, 0, 1,-1, 0, 1};
ll enc(ll x,ll y){ return x*MAXY+y;} // 编码
int main(){
int n = read();
ll k = read();
vector<pair<ll,ll>> pts(n+1);
map<ll,vector<int>> mp;
rep(i,1,n+1){
ll x = read() + k; // 平移 保证8邻的坐标也是非负, 题解这里有问题?x,y可能为负数?
ll y = read() + k;
pts[i] = {x,y};
mp[enc(x/k,y/k)].push_back(i);
}
vector<pair<int,int>> res;
rep(i,1,n+1){
auto [x,y] = pts[i];
rep(t,0,9) for(int j: mp[enc(x/k+dx[t],y/k+dy[t])]) if(i<j) { // 自己和八邻块
auto [xj,yj] = pts[j];
if((x-xj)*(x-xj) + (y-yj)*(y-yj) <= k*k) res.push_back({i,j});
}
}
sort(res.begin(),res.end());
printf("%d\n",(int)res.size());
for(auto [i,j]: res) printf("%d %d\n",i,j);
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | Ex - Enumerate Pairs |
| ユーザ | cromarmot |
| 言語 | C++ (GCC 9.2.1) |
| 得点 | 600 |
| コード長 | 1008 Byte |
| 結果 | AC |
| 実行時間 | 909 ms |
| メモリ | 153236 KiB |
コンパイルエラー
./Main.cpp: In function ‘ll read()’:
./Main.cpp:6:21: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
6 | ll read(){ll r;scanf("%lld",&r);return r;}
| ~~~~~^~~~~~~~~~~
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 600 / 600 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | sample_01.txt, sample_02.txt, sample_03.txt |
| All | hack.txt, sample_01.txt, sample_02.txt, sample_03.txt, type01_10.txt, type01_11.txt, type01_12.txt, type01_13.txt, type01_14.txt, type01_15.txt, type01_16.txt, type01_17.txt, type01_18.txt, type02_01.txt, type02_03.txt, type02_06.txt, type02_08.txt, type02_09.txt, type02_11.txt, type02_14.txt, type02_16.txt, type03_01.txt, type03_02.txt, type03_03.txt, type03_04.txt, type04_01.txt, type04_02.txt, type04_03.txt, type04_04.txt, type05_13.txt, type05_14.txt, type05_15.txt, type05_16.txt, type05_17.txt, type05_18.txt, type05_19.txt, type05_20.txt, type05_21.txt, type05_22.txt, type05_23.txt, type05_24.txt, type06_01.txt, type06_02.txt, type06_03.txt, type06_04.txt, type06_05.txt, type06_06.txt, type06_07.txt, type06_08.txt, type06_09.txt, type06_10.txt, type07_01.txt, type07_02.txt, type07_03.txt, type07_04.txt, type08_02.txt, type08_03.txt, type08_06.txt, type08_07.txt, type08_10.txt, type08_11.txt, type08_14.txt, type08_15.txt, type08_18.txt, type08_19.txt, type08_22.txt, type08_23.txt, type09_06.txt, type09_07.txt, type10_01.txt, type10_02.txt, type10_03.txt, type10_04.txt, type10_05.txt, type10_06.txt, type10_07.txt, type10_08.txt, type10_09.txt, type10_10.txt, type10_11.txt, type10_12.txt, type11_01.txt, type11_02.txt, type11_03.txt, type11_04.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| hack.txt | AC | 474 ms | 61636 KiB |
| sample_01.txt | AC | 6 ms | 3608 KiB |
| sample_02.txt | AC | 2 ms | 3596 KiB |
| sample_03.txt | AC | 2 ms | 3608 KiB |
| type01_10.txt | AC | 76 ms | 7524 KiB |
| type01_11.txt | AC | 247 ms | 13256 KiB |
| type01_12.txt | AC | 386 ms | 18720 KiB |
| type01_13.txt | AC | 701 ms | 27804 KiB |
| type01_14.txt | AC | 651 ms | 27768 KiB |
| type01_15.txt | AC | 681 ms | 32960 KiB |
| type01_16.txt | AC | 643 ms | 27772 KiB |
| type01_17.txt | AC | 636 ms | 27788 KiB |
| type01_18.txt | AC | 715 ms | 32952 KiB |
| type02_01.txt | AC | 23 ms | 4232 KiB |
| type02_03.txt | AC | 78 ms | 7684 KiB |
| type02_06.txt | AC | 67 ms | 7404 KiB |
| type02_08.txt | AC | 141 ms | 9564 KiB |
| type02_09.txt | AC | 14 ms | 3948 KiB |
| type02_11.txt | AC | 82 ms | 7624 KiB |
| type02_14.txt | AC | 28 ms | 4240 KiB |
| type02_16.txt | AC | 135 ms | 9472 KiB |
| type03_01.txt | AC | 268 ms | 17784 KiB |
| type03_02.txt | AC | 249 ms | 12944 KiB |
| type03_03.txt | AC | 347 ms | 12624 KiB |
| type03_04.txt | AC | 321 ms | 12660 KiB |
| type04_01.txt | AC | 860 ms | 153236 KiB |
| type04_02.txt | AC | 898 ms | 153112 KiB |
| type04_03.txt | AC | 866 ms | 153112 KiB |
| type04_04.txt | AC | 909 ms | 153036 KiB |
| type05_13.txt | AC | 15 ms | 3732 KiB |
| type05_14.txt | AC | 10 ms | 3860 KiB |
| type05_15.txt | AC | 4 ms | 3776 KiB |
| type05_16.txt | AC | 14 ms | 3780 KiB |
| type05_17.txt | AC | 2 ms | 3756 KiB |
| type05_18.txt | AC | 62 ms | 7376 KiB |
| type05_19.txt | AC | 35 ms | 5312 KiB |
| type05_20.txt | AC | 57 ms | 7296 KiB |
| type05_21.txt | AC | 8 ms | 3632 KiB |
| type05_22.txt | AC | 14 ms | 3860 KiB |
| type05_23.txt | AC | 13 ms | 3800 KiB |
| type05_24.txt | AC | 35 ms | 5312 KiB |
| type06_01.txt | AC | 6 ms | 3688 KiB |
| type06_02.txt | AC | 2 ms | 3736 KiB |
| type06_03.txt | AC | 2 ms | 3676 KiB |
| type06_04.txt | AC | 2 ms | 3708 KiB |
| type06_05.txt | AC | 1 ms | 3596 KiB |
| type06_06.txt | AC | 2 ms | 3620 KiB |
| type06_07.txt | AC | 2 ms | 3620 KiB |
| type06_08.txt | AC | 2 ms | 3676 KiB |
| type06_09.txt | AC | 2 ms | 3680 KiB |
| type06_10.txt | AC | 1 ms | 3684 KiB |
| type07_01.txt | AC | 2 ms | 3688 KiB |
| type07_02.txt | AC | 2 ms | 3736 KiB |
| type07_03.txt | AC | 2 ms | 3732 KiB |
| type07_04.txt | AC | 3 ms | 3680 KiB |
| type08_02.txt | AC | 664 ms | 37968 KiB |
| type08_03.txt | AC | 560 ms | 38056 KiB |
| type08_06.txt | AC | 716 ms | 38016 KiB |
| type08_07.txt | AC | 557 ms | 38048 KiB |
| type08_10.txt | AC | 686 ms | 38072 KiB |
| type08_11.txt | AC | 589 ms | 38084 KiB |
| type08_14.txt | AC | 692 ms | 38108 KiB |
| type08_15.txt | AC | 577 ms | 38044 KiB |
| type08_18.txt | AC | 683 ms | 38072 KiB |
| type08_19.txt | AC | 591 ms | 38124 KiB |
| type08_22.txt | AC | 677 ms | 38020 KiB |
| type08_23.txt | AC | 541 ms | 38056 KiB |
| type09_06.txt | AC | 7 ms | 3680 KiB |
| type09_07.txt | AC | 2 ms | 3756 KiB |
| type10_01.txt | AC | 807 ms | 92220 KiB |
| type10_02.txt | AC | 885 ms | 92260 KiB |
| type10_03.txt | AC | 882 ms | 92168 KiB |
| type10_04.txt | AC | 833 ms | 92196 KiB |
| type10_05.txt | AC | 851 ms | 92240 KiB |
| type10_06.txt | AC | 876 ms | 92196 KiB |
| type10_07.txt | AC | 896 ms | 92252 KiB |
| type10_08.txt | AC | 828 ms | 92248 KiB |
| type10_09.txt | AC | 852 ms | 92280 KiB |
| type10_10.txt | AC | 868 ms | 92212 KiB |
| type10_11.txt | AC | 850 ms | 92192 KiB |
| type10_12.txt | AC | 798 ms | 92256 KiB |
| type11_01.txt | AC | 325 ms | 34480 KiB |
| type11_02.txt | AC | 276 ms | 34576 KiB |
| type11_03.txt | AC | 273 ms | 34360 KiB |
| type11_04.txt | AC | 325 ms | 34364 KiB |