제출 #526693

#제출 시각아이디문제언어결과실행 시간메모리
526693brayden04Političari (COCI20_politicari)C++14
30 / 70
696 ms524292 KiB
#include <bits/stdc++.h>
#define endl '\n'
#define int long long
 
using namespace std;
 
vector<int> adjlst[505];
vector<int> pattern;
 
signed main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);
 
    int N, K;
    cin >> N >> K;
 
    for (int i = 1; i <= N; i++){
        for (int i2 = 1; i2 <= N; i2++){
            int temp = 0;
            cin >> temp;
            adjlst[i].push_back(temp);
        }
    }
    
    
    int curPerson = 1;
    int prevShow = 0;
 
    int person1 = 0;
    int person2 = 0;
 
    int i = 0;
 
    while (true){
        if (prevShow == 0){
            curPerson += 1;
            person1 = curPerson;
            prevShow = 1;
            pattern.push_back(curPerson);
        }
        else{
            int tempPrev = prevShow;
            person1 = curPerson;
            prevShow = curPerson;
            curPerson = adjlst[curPerson][tempPrev-1];
            person2 = curPerson;
            pattern.push_back(curPerson);
        }
 
        if (i > 2 && pattern[0] == person1 && pattern[1] == person2){
            break;
        }
        i++;

        if (i == K - 1){
            cout << curPerson << endl;
            break;
        }
    }

    pattern.pop_back();
    pattern.pop_back();
    
    if (i < K - 1){
        for (int i = 0; i < pattern.size(); i++){
            cout << pattern[i] << " ";
        }
        cout << endl;

        cout << pattern[K % pattern.size() + 1] << endl;
    }
}

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

politicari.cpp: In function 'int main()':
politicari.cpp:65:27: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   65 |         for (int i = 0; i < pattern.size(); i++){
      |                         ~~^~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...