Submission #1455924


Source Code Expand

#include <bits/stdc++.h>
using namespace std;
#define int long long

typedef long long ll;
typedef pair<int,int> pii;
typedef pair<ll,int> plli;
typedef pair<int,pii> pipii;
typedef vector<int> vi;
typedef vector<ll> vll;
typedef vector<vi> vvi;
typedef vector<vvi> vvvi;
typedef vector<pii> vpii;

#define rep(i,n) for (int i=0;i<(n);i++)
#define rep2(i,a,b) for (int i=(a);i<(b);i++)
#define rrep(i,n) for (int i=(n);i>0;i--)
#define rrep2(i,a,b) for (int i=(a);i>b;i--)
#define pb push_back
#define fi first
#define se second
#define all(a) (a).begin(),(a).end()

const ll mod = 1e9 + 7;
const ll INF = 1<<30;
const int dx4[4] = {1, 0, -1, 0};
const int dy4[4] = {0, 1, 0, -1};
const int dx8[8] = {1, 1, 1, 0, 0, -1, -1, -1};
const int dy8[8] = {0, 1, -1, 1, -1, 0, 1, -1};
const double pi = 3.141592653589793;

int n;
int a[100000 + 5];
priority_queue<pair<int, int>, vector<pair<int, int>>, greater<pair<int, int>>> pq;

signed main(){
    cin.tie(0);
    ios::sync_with_stdio(false);
    cin >> n;
    int mx = 0;
    rep(i, n) {
        cin >> a[i];
        mx = max(mx, a[i]);
        pq.push(make_pair(a[i], i));
    }
    int pre = -1;
    int ans = 1;
    bool check[n] = {};
    while (!pq.empty()) {
        pair<int, int> p = pq.top();pq.pop();
        if (p.fi == mx) {
            if (p.se == 0) {
                bool ok = true;
                rep2(i, 1, pre + 1) if (!check[i]) {ok = false; break;}
                if (!ok) ans++;
                break;
            }
            else {
                if (pre < p.se) break;
                else ans++;
            }
        }
        int now = p.se;
        if (now < pre) ans++;
        check[now] = true;
        pre = now;
    }
    //if (pre !=  0) ans++;
    cout << ans << endl;
}

Submission Info

Submission Time
Task B - ディスコ社内ツアー
User roto_37
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1828 Byte
Status WA
Exec Time 24 ms
Memory 2932 KB

Judge Result

Set Name Sample Small Permutation All
Score / Max Score 0 / 0 0 / 20 0 / 10 0 / 70
Status
AC × 4
AC × 15
WA × 11
AC × 18
WA × 5
AC × 25
WA × 23
Set Name Test Cases
Sample 00_example_01.txt, 00_example_02.txt, 00_example_03.txt, 00_example_04.txt
Small 00_example_01.txt, 00_example_02.txt, 00_example_03.txt, 00_example_04.txt, 10_rand_01.txt, 10_rand_02.txt, 10_rand_03.txt, 10_rand_04.txt, 10_rand_05.txt, 10_rand_06.txt, 10_rand_07.txt, 10_rand_08.txt, 20_perm_01.txt, 20_perm_02.txt, 20_perm_03.txt, 20_perm_04.txt, 20_perm_05.txt, 20_perm_06.txt, 20_perm_07.txt, 20_perm_08.txt, 30_hand_01.txt, 30_hand_02.txt, 30_hand_03.txt, 30_hand_04.txt, 30_hand_05.txt, 30_hand_06.txt
Permutation 00_example_01.txt, 00_example_02.txt, 00_example_03.txt, 20_perm_01.txt, 20_perm_02.txt, 20_perm_03.txt, 20_perm_04.txt, 20_perm_05.txt, 20_perm_06.txt, 20_perm_07.txt, 20_perm_08.txt, 30_hand_01.txt, 30_hand_02.txt, 60_perm_01.txt, 60_perm_02.txt, 60_perm_03.txt, 60_perm_04.txt, 60_perm_05.txt, 60_perm_06.txt, 60_perm_07.txt, 60_perm_08.txt, 70_hand_01.txt, 70_hand_02.txt
All 00_example_01.txt, 00_example_02.txt, 00_example_03.txt, 00_example_04.txt, 10_rand_01.txt, 10_rand_02.txt, 10_rand_03.txt, 10_rand_04.txt, 10_rand_05.txt, 10_rand_06.txt, 10_rand_07.txt, 10_rand_08.txt, 20_perm_01.txt, 20_perm_02.txt, 20_perm_03.txt, 20_perm_04.txt, 20_perm_05.txt, 20_perm_06.txt, 20_perm_07.txt, 20_perm_08.txt, 30_hand_01.txt, 30_hand_02.txt, 30_hand_03.txt, 30_hand_04.txt, 30_hand_05.txt, 30_hand_06.txt, 50_rand_01.txt, 50_rand_02.txt, 50_rand_03.txt, 50_rand_04.txt, 50_rand_05.txt, 50_rand_06.txt, 50_rand_07.txt, 50_rand_08.txt, 60_perm_01.txt, 60_perm_02.txt, 60_perm_03.txt, 60_perm_04.txt, 60_perm_05.txt, 60_perm_06.txt, 60_perm_07.txt, 60_perm_08.txt, 70_hand_01.txt, 70_hand_02.txt, 70_hand_03.txt, 70_hand_04.txt, 70_hand_05.txt, 70_hand_06.txt
Case Name Status Exec Time Memory
00_example_01.txt AC 1 ms 256 KB
00_example_02.txt AC 1 ms 256 KB
00_example_03.txt AC 1 ms 256 KB
00_example_04.txt AC 1 ms 256 KB
10_rand_01.txt WA 1 ms 256 KB
10_rand_02.txt WA 1 ms 256 KB
10_rand_03.txt WA 1 ms 256 KB
10_rand_04.txt AC 1 ms 256 KB
10_rand_05.txt AC 1 ms 256 KB
10_rand_06.txt WA 1 ms 256 KB
10_rand_07.txt WA 1 ms 256 KB
10_rand_08.txt WA 1 ms 256 KB
20_perm_01.txt AC 1 ms 256 KB
20_perm_02.txt WA 2 ms 384 KB
20_perm_03.txt WA 1 ms 256 KB
20_perm_04.txt AC 1 ms 256 KB
20_perm_05.txt AC 1 ms 256 KB
20_perm_06.txt WA 1 ms 256 KB
20_perm_07.txt AC 1 ms 256 KB
20_perm_08.txt AC 1 ms 256 KB
30_hand_01.txt AC 1 ms 256 KB
30_hand_02.txt AC 1 ms 256 KB
30_hand_03.txt AC 1 ms 256 KB
30_hand_04.txt AC 1 ms 256 KB
30_hand_05.txt WA 2 ms 256 KB
30_hand_06.txt WA 1 ms 256 KB
50_rand_01.txt WA 9 ms 1656 KB
50_rand_02.txt WA 17 ms 2932 KB
50_rand_03.txt WA 17 ms 2932 KB
50_rand_04.txt WA 13 ms 1656 KB
50_rand_05.txt WA 6 ms 1020 KB
50_rand_06.txt WA 1 ms 256 KB
50_rand_07.txt WA 3 ms 768 KB
50_rand_08.txt WA 13 ms 1780 KB
60_perm_01.txt WA 9 ms 1656 KB
60_perm_02.txt AC 16 ms 2932 KB
60_perm_03.txt AC 16 ms 2932 KB
60_perm_04.txt WA 13 ms 1656 KB
60_perm_05.txt AC 6 ms 1020 KB
60_perm_06.txt AC 1 ms 256 KB
60_perm_07.txt AC 3 ms 768 KB
60_perm_08.txt AC 13 ms 1780 KB
70_hand_01.txt AC 18 ms 2932 KB
70_hand_02.txt AC 19 ms 2932 KB
70_hand_03.txt AC 10 ms 2932 KB
70_hand_04.txt AC 17 ms 2932 KB
70_hand_05.txt WA 24 ms 2932 KB
70_hand_06.txt WA 24 ms 2932 KB