提出 #71871099
ソースコード 拡げる
#include <iostream>
#include <vector>
#include <string>
#include <cmath>
#include <set>
#include <unordered_map>
#include <map>
#include <unordered_set>
#include <queue>
#include <algorithm>
#include <iomanip>
#include <cassert>
#include <functional>
#include <random>
using namespace std;
#define ll long long
#define MOD 998244353
#define ld long double
#define INF 2251799813685248
#define vall(A) A.begin(),A.end()
#define gridinput(vv,H,W) for (ll i = 0; i < H; i++){string T; cin >> T; for(ll j = 0; j < W; j++){vv[i][j] = {T[j]};}}
#define adjustedgridinput(vv,H,W) for (ll i = 1; i <= H; i++){string T; cin >> T; for(ll j = 1; j <= W; j++){vv[i][j] = {T[j-1]};}}
#define vin(A) for (ll i = 0, sz = A.size(); i < sz; i++){cin >> A[i];}
#define vout(A) for(ll i = 0, sz = A.size(); i < sz; i++){cout << A[i] << " \n"[i == sz-1];}
#define vsum(A) [&](const auto &vveecc){ll ssuumm = 0; for(auto &vvaalluuee : vveecc){ssuumm += vvaalluuee;} return ssuumm;}(A)
#define adjustedvin(A) for (ll i = 1, sz = A.size(); i < sz; i++){cin >> A[i];}
#define adjustedvout(A) for(ll i = 1, sz = A.size(); i < sz; i++){cout << A[i] << " \n"[i == sz-1];}
#define vout2d(A,H,W) for (ll i = 0; i < H; i++){for (ll j = 0; j < W; j++){cout << A[i][j] << " \n"[j==W-1];}}
#define encode(i,j) ((i)<<32)+j
#define decode(v,w) (w ? (v)%4294967296 : (v)>>32)
vector<ll> pow2ll{1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432,67108864,134217728,268435456,536870912,1073741824,2147483648,4294967296};
vector<ll> pow10ll{1,10,100,1000,10000,100000,1000000,10000000,100000000,1000000000,10000000000,100000000000,1000000000000,10000000000000,100000000000000,1000000000000000,10000000000000000,100000000000000000,1000000000000000000};
vector<ll> di{0,1,0,-1};
vector<ll> dj{1,0,-1,0};
void dfs(vector<ll> &ans, vector<vector<pair<ll,ll>>> &E, vector<ll> now){
map<ll, set<ll>> temp;
for (auto n : now){
for (auto v : E[n]){
temp[v.first].insert(v.second);
}
}
while (!temp.empty()){
auto temp2 = *temp.begin();
vector<ll> now_next;
temp.erase(temp.begin());
for (auto v : temp2.second){
ans.push_back(v);
now_next.push_back(v);
}
dfs(ans, E, now_next);
}
}
int main(){
ios::sync_with_stdio(false);
std::cin.tie(nullptr);
ll N;
cin >> N;
vector<ll> ans;
vector<vector<pair<ll,ll>>> E(N+1);
for (ll i = 1; i <= N; i++){
ll idx,y;
cin >> idx >> y;
E[idx].push_back({y,i});
}
dfs(ans, E, {0});
vout(ans);
}
提出情報
| 提出日時 |
|
| 問題 |
E - Sort Arrays |
| ユーザ |
a1073741824 |
| 言語 |
C++23 (GCC 15.2.0) |
| 得点 |
450 |
| コード長 |
2735 Byte |
| 結果 |
AC |
| 実行時間 |
172 ms |
| メモリ |
139336 KiB |
ジャッジ結果
| セット名 |
Sample |
All |
| 得点 / 配点 |
0 / 0 |
450 / 450 |
| 結果 |
|
|
| セット名 |
テストケース |
| Sample |
00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
| All |
00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt, 01_test_28.txt, 01_test_29.txt, 01_test_30.txt, 01_test_31.txt, 01_test_32.txt, 01_test_33.txt, 01_test_34.txt, 01_test_35.txt, 01_test_36.txt, 01_test_37.txt, 01_test_38.txt, 01_test_39.txt, 01_test_40.txt, 01_test_41.txt, 01_test_42.txt, 01_test_43.txt, 01_test_44.txt |
| ケース名 |
結果 |
実行時間 |
メモリ |
| 00_sample_00.txt |
AC |
1 ms |
3608 KiB |
| 00_sample_01.txt |
AC |
1 ms |
3604 KiB |
| 00_sample_02.txt |
AC |
1 ms |
3572 KiB |
| 01_test_00.txt |
AC |
19 ms |
9076 KiB |
| 01_test_01.txt |
AC |
154 ms |
40056 KiB |
| 01_test_02.txt |
AC |
60 ms |
13636 KiB |
| 01_test_03.txt |
AC |
116 ms |
22580 KiB |
| 01_test_04.txt |
AC |
65 ms |
14424 KiB |
| 01_test_05.txt |
AC |
116 ms |
22412 KiB |
| 01_test_06.txt |
AC |
33 ms |
9176 KiB |
| 01_test_07.txt |
AC |
122 ms |
22400 KiB |
| 01_test_08.txt |
AC |
7 ms |
4776 KiB |
| 01_test_09.txt |
AC |
123 ms |
22412 KiB |
| 01_test_10.txt |
AC |
113 ms |
21896 KiB |
| 01_test_11.txt |
AC |
119 ms |
22268 KiB |
| 01_test_12.txt |
AC |
14 ms |
5972 KiB |
| 01_test_13.txt |
AC |
123 ms |
22340 KiB |
| 01_test_14.txt |
AC |
32 ms |
9196 KiB |
| 01_test_15.txt |
AC |
124 ms |
22396 KiB |
| 01_test_16.txt |
AC |
52 ms |
12784 KiB |
| 01_test_17.txt |
AC |
123 ms |
22396 KiB |
| 01_test_18.txt |
AC |
7 ms |
4712 KiB |
| 01_test_19.txt |
AC |
123 ms |
22320 KiB |
| 01_test_20.txt |
AC |
131 ms |
43136 KiB |
| 01_test_21.txt |
AC |
106 ms |
41660 KiB |
| 01_test_22.txt |
AC |
135 ms |
139184 KiB |
| 01_test_23.txt |
AC |
133 ms |
92072 KiB |
| 01_test_24.txt |
AC |
107 ms |
41924 KiB |
| 01_test_25.txt |
AC |
72 ms |
21700 KiB |
| 01_test_26.txt |
AC |
135 ms |
139232 KiB |
| 01_test_27.txt |
AC |
125 ms |
90352 KiB |
| 01_test_28.txt |
AC |
106 ms |
36400 KiB |
| 01_test_29.txt |
AC |
79 ms |
21800 KiB |
| 01_test_30.txt |
AC |
135 ms |
139316 KiB |
| 01_test_31.txt |
AC |
119 ms |
89416 KiB |
| 01_test_32.txt |
AC |
118 ms |
37144 KiB |
| 01_test_33.txt |
AC |
78 ms |
21668 KiB |
| 01_test_34.txt |
AC |
135 ms |
139292 KiB |
| 01_test_35.txt |
AC |
124 ms |
88504 KiB |
| 01_test_36.txt |
AC |
132 ms |
35820 KiB |
| 01_test_37.txt |
AC |
80 ms |
21748 KiB |
| 01_test_38.txt |
AC |
135 ms |
139336 KiB |
| 01_test_39.txt |
AC |
125 ms |
87620 KiB |
| 01_test_40.txt |
AC |
172 ms |
36500 KiB |
| 01_test_41.txt |
AC |
76 ms |
21568 KiB |
| 01_test_42.txt |
AC |
133 ms |
139244 KiB |
| 01_test_43.txt |
AC |
139 ms |
88388 KiB |
| 01_test_44.txt |
AC |
1 ms |
3712 KiB |