제출 #1364618

#제출 시각아이디문제언어결과실행 시간메모리
1364618clemmy14Island Hopping (JOI24_island)C++20
20 / 100
2 ms428 KiB
#include<bits/stdc++.h>
#include "island.h"
using namespace std;


void solve(int N, int L) {
    
    vector<int> first(N+1), second(N+1);

    vector<pair<int, int>> ans;

    for(int i=1; i<=N; i++) {
        first[i]=query(i, 1);
        ans.push_back({min(first[i], i), max(first[i], i)});
        second[i]=query(i, 2);
    }

    for(int i=1; i<=N; i++) {
        if(second[i] == first[first[i]]) continue;
        else if(second[i] != second[first[i]]) {
            ans.push_back({min(second[i], i), max(second[i], i)});
        } else {
            if(first[second[i]] == i || second[second[i]] == i) {
                ans.push_back({min(second[i], i), max(second[i], i)});
            } else {
                ans.push_back({min(second[i], first[i]), max(second[i], first[i])});
            }
        }
    }


    sort(ans.begin(), ans.end());
    
    for(int i=0; i<ans.size(); i++) {
        if(i != 0 && ans[i] == ans[i-1]) continue;
        // cerr << ans[i].first << ' ' << ans[i].second << endl;
        answer(ans[i].first, ans[i].second);
    }

}
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…