Submission #49677

# Submission time Handle Problem Language Result Execution time Memory
49677 2018-06-02T03:49:41 Z mra2322001 Crazy old lady (IZhO13_crazy) C++14
0 / 100
3 ms 376 KB
#include <bits/stdc++.h>
#define f0(i, n) for(int i(0); i<(n); i++)
#define f1(i, n) for(int i(1); i<=(n); i++)

using namespace std;
typedef long long ll;
const int N = 1002;

int n, testcase, a[N], taken[N];

void solve(){
    vector <int> save;
    cin >> n;
    f1(i, n) cin >> a[i];
    if(n==2){
        cout << 0 << endl;
        return ;
    }
    /// first one is crazy old lady
    f1(i, n) if(a[i] != i) save.push_back(i); /// sai cho
    if(a[2]==1){
        /// seat of the COL is not 1
        cout << save[save.size() - 1] << endl;
        return ;
    }
    int sz = save.size() - 1;
    /// seat of the COL is 1
    memset(taken, 0, sizeof(taken));
    bool ok = 0; int x = 0, y = 0;
    f1(i, n){
        if(ok && a[i] != i){
            cout << 0 << endl;
            return ;
        }
        if(ok && a[i]==i) continue;
        if(a[i] != i){
            ///x = i + 1, y;
            if(i >= x && i <= y){
                cout << 0 << endl;
                return ;
            }
            x = i + 1, y = a[i] - 1;
        }
        if(a[i]==1) ok = 1;
    }
    cout << 1 << endl;
}

int main(){
    ios_base::sync_with_stdio(0);
 
    cin >> testcase;
    while(testcase--) solve();
}

Compilation message

crazy.cpp: In function 'void solve()':
crazy.cpp:26:9: warning: unused variable 'sz' [-Wunused-variable]
     int sz = save.size() - 1;
         ^~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Incorrect 3 ms 376 KB Output isn't correct
3 Halted 0 ms 0 KB -