Submission #569433

# Submission time Handle Problem Language Result Execution time Memory
569433 2022-05-27T11:46:47 Z 79brue Teleporters (IOI08_teleporters) C++17
25 / 100
839 ms 25832 KB
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

int n, k, len;
int nxt[2000002];
bool visited[2000002];
int l[1000002], r[1000002];
vector<int> vec;
int base;

int main(){
    scanf("%d %d", &n, &k);
    for(int i=1; i<=n; i++){
        scanf("%d %d", &l[i], &r[i]);
        vec.push_back(l[i]), vec.push_back(r[i]);
    }
    sort(vec.begin(), vec.end());
    len = n*2;
    for(int i=0; i<len; i++) nxt[i] = i+1;
    for(int i=1; i<=n; i++){
        l[i] = lower_bound(vec.begin(), vec.end(), l[i]) - vec.begin() + 1;
        r[i] = lower_bound(vec.begin(), vec.end(), r[i]) - vec.begin() + 1;
        nxt[l[i]-1] = r[i];
        nxt[r[i]-1] = l[i];
    }
    nxt[len] = 0;
    vec.clear();
    for(int i=0; i<=len; i++){
        if(visited[i]) continue;
        int x = i, cnt = 0;
        while(!visited[x]){
            visited[x] = 1;
            cnt++;
            x = nxt[x];
        }
        if(i==0) base = cnt;
        else vec.push_back(cnt);
    }
    sort(vec.begin(), vec.end());
    --base;
    while(1){
        if(vec.empty()) break;
        else base += vec.back() + 2, vec.pop_back();
        k--;
    }
    base += k/2*4, k%=2;
    base-=k;
    printf("%d", base);
}

Compilation message

teleporters.cpp: In function 'int main()':
teleporters.cpp:15:10: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   15 |     scanf("%d %d", &n, &k);
      |     ~~~~~^~~~~~~~~~~~~~~~~
teleporters.cpp:17:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   17 |         scanf("%d %d", &l[i], &r[i]);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 340 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 3 ms 340 KB Output is correct
2 Incorrect 8 ms 612 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 468 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 9 ms 756 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 10 ms 852 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 87 ms 3648 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 168 ms 5828 KB Output is correct
2 Incorrect 338 ms 11724 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 470 ms 16164 KB Output is correct
2 Incorrect 606 ms 19476 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 726 ms 22740 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 814 ms 25760 KB Output is correct
2 Incorrect 839 ms 25832 KB Output isn't correct
3 Halted 0 ms 0 KB -