Submission details
Task:Peli
Sender:alli
Submission time:2026-01-18 19:29:38 +0200
Language:C++ (C++20)
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED17
#2ACCEPTED38
#3ACCEPTED45
Test results
testverdicttimegroup
#1ACCEPTED0.00 s1, 2, 3details
#2ACCEPTED0.00 s1, 2, 3details
#3ACCEPTED0.01 s2, 3details
#4ACCEPTED0.01 s3details
#5ACCEPTED0.01 s2, 3details
#6ACCEPTED0.01 s3details

Code

#include <bits/stdc++.h>
typedef long long ll;
using namespace std;

int d[2001][2001];
int z[2001][2001];

int e[6001];

int haku(int a, int b) {
    //cout << "haku " << a << " " << b << "\n";
    //if (b > a) swap(a,b);
    if (z[a][b]) return d[a][b];
    z[a][b] = 1;

    if (a == 0 && b == 0) {
        return 0;
    }
    if (a == b || a == 0 || b == 0) {
        d[a][b] = 1;
        return 1;
    }
    int m = min(a, b);
    for (int i = a-1; i > 0; i--) {
        if (!haku(i, b)) {
            d[a][b] = 1;
            return 1;
        }
    }
    for (int i = 1; i < m; i++) {
        if (!haku(a-i,b-i)) {
            d[a][b] = 1;
            return 1;
        }
    }
    for (int i = b-1; i > 0; i--) {
        if (!haku(a, i)) {
            d[a][b] = 1;
            return 1;
        }
    }
    return 0;
}

int main() {
    //ios_base::sync_with_stdio(false);
    //cin.tie(nullptr);
    //freopen(R"(C:\Users\Kymppi\Downloads\test_input.txt)", "r", stdin);

    int t;
    cin >> t;
    int o = 1;
    for (int i = 1; i <= 2000; i++) {
        if (!e[i]) {
            e[i] = i+o;
            e[i+o] = i;
            o++;
        }
    }

    for (int i = 1; i <= t; i++) {
        int a, b;
        cin >> a >> b;
        if (e[a] == b) {
            cout << "second\n";
        }else {
            cout << "first\n";
        }
    }

    /*for (int i = 1; i <= 2000; i++) {
        for (int j = 1; j <= 2000; j++) {
            haku(i,j);
            if (!d[i][j]) {
                if (e[i] != j) {
                    cout << "NOT SAME " << i << " " << j << "\n";
                }
                //cout << i << " " << j << "\n";
            }
        }
    }*/
}

Test details

Test 1 (public)

Group: 1, 2, 3

Verdict: ACCEPTED

input
5
2 2
1 2
3 2
4 3
...

correct output
first
second
first
first
second

user output
first
second
first
first
second

Test 2

Group: 1, 2, 3

Verdict: ACCEPTED

input
100
1 1
1 2
1 3
1 4
...

correct output
first
second
first
first
first
...

user output
first
second
first
first
first
...

Test 3

Group: 2, 3

Verdict: ACCEPTED

input
1000
82 14
91 84
13 97
92 23
...

correct output
first
first
first
first
first
...

user output
first
first
first
first
first
...

Test 4

Group: 3

Verdict: ACCEPTED

input
1000
1630 271
1812 1671
254 1938
1827 443
...

correct output
first
first
first
first
first
...

user output
first
first
first
first
first
...

Test 5

Group: 2, 3

Verdict: ACCEPTED

input
1000
36 14
79 81
93 82
32 1
...

correct output
first
first
first
first
first
...

user output
first
first
first
first
first
...

Test 6

Group: 3

Verdict: ACCEPTED

input
1000
486 300
899 1455
879 543
40 65
...

correct output
second
second
second
second
second
...

user output
second
second
second
second
second
...