제출 #1255405

#제출 시각아이디문제언어결과실행 시간메모리
1255405robijoyFinding Routers (IOI20_routers)C++17
컴파일 에러
0 ms0 KiB
/*
 *   Starting with the name of almighty ALLAH
 */

#include "routers.h"
// #include <bits/stdc++.h>
using namespace std;

// #define int long long

vector<int> p = {0,8};

// int use_detector(int x)
// {
//     vector<int>::iterator left, right;
//     right = upper_bound(p.begin(), p.end(), x);
//     left = prev(right);

//     if (right == p.end()) {
//         return p.size() - 1;
//     } else if ((x - *left) <= (*right - x)){
//         return std::distance(p.begin(), left);
//     } else {
//         return std::distance(p.begin(), right);
//     }
// }

vector<int> find_routers(int l, int n, int q) {
    vector<int> ans;
    ans.push_back(0);
    for (int i = l; i >= 1; i--)
    {
        int x = use_detector(i);
        if(x == 0) {
            int y = (x*2)+1;
            ans.push_back(y);
            break;
        }
    }
    return ans;
}

// int32_t main() {
//     ios::sync_with_stdio(false);
//     cin.tie(0);
//     int l, n, q;
//     cin>>l>>n>>q;
//     vector<int> robi = find_routers(l,n,q);
//     for (int i = 0; i < robi.size(); ++i)
//     {
//         cout<<robi[i]<<' ';
//     }
// }
/*
 *   Starting with the name of almighty ALLAH
 */

#include "routers.h"
// #include <bits/stdc++.h>
using namespace std;

// #define int long long

vector<int> p = {0,8};

// int use_detector(int x)
// {
//     vector<int>::iterator left, right;
//     right = upper_bound(p.begin(), p.end(), x);
//     left = prev(right);

//     if (right == p.end()) {
//         return p.size() - 1;
//     } else if ((x - *left) <= (*right - x)){
//         return std::distance(p.begin(), left);
//     } else {
//         return std::distance(p.begin(), right);
//     }
// }

vector<int> find_routers(int l, int n, int q) {
    vector<int> ans;
    ans.push_back(0);
    for (int i = l; i >= 1; i--)
    {
        int x = use_detector(i);
        if(x == 0) {
            int y = (x*2)+1;
            ans.push_back(y);
            break;
        }
    }
    return ans;
}

// int32_t main() {
//     ios::sync_with_stdio(false);
//     cin.tie(0);
//     int l, n, q;
//     cin>>l>>n>>q;
//     vector<int> robi = find_routers(l,n,q);
//     for (int i = 0; i < robi.size(); ++i)
//     {
//         cout<<robi[i]<<' ';
//     }
// }

컴파일 시 표준 에러 (stderr) 메시지

routers.cpp:64:13: error: redefinition of 'std::vector<int> p'
   64 | vector<int> p = {0,8};
      |             ^
routers.cpp:11:13: note: 'std::vector<int> p' previously declared here
   11 | vector<int> p = {0,8};
      |             ^
routers.cpp:81:13: error: redefinition of 'std::vector<int> find_routers(int, int, int)'
   81 | vector<int> find_routers(int l, int n, int q) {
      |             ^~~~~~~~~~~~
routers.cpp:28:13: note: 'std::vector<int> find_routers(int, int, int)' previously defined here
   28 | vector<int> find_routers(int l, int n, int q) {
      |             ^~~~~~~~~~~~