提出 #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
結果
AC × 3
AC × 48
セット名 テストケース
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