Submission details
Task:Hypyt
Sender:Gomhog
Submission time:2025-10-18 10:01:59 +0300
Language:C++ (C++11)
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED30
#2ACCEPTED70
Test results
testverdicttimegroup
#1ACCEPTED0.00 s1, 2details
#2ACCEPTED0.00 s1, 2details
#3ACCEPTED0.01 s2details
#4ACCEPTED0.03 s2details
#5ACCEPTED0.04 s2details

Code

#include <bits/stdc++.h>
#define F first
#define S second
#define X real()
#define Y imag()
using namespace std;
typedef long long ll;
typedef long double ld;

void solve_narrow(int n) {
    if (n==0) return;
    cout<<n<<" 0\n";
    if (n>1) {
        cout<<-n+1<<" 0\n";
        solve_narrow(n-2);
    }
}

void solve(int n, int m) {
    if (m==0) {
        solve_narrow(n);
        return;
    }
    for (int i=0;i<=n;i++) {
        cout<<n-(2*i)<<" "<<m<<"\n";
        if (i<n) cout<<-(n-(2*i))+1<<" "<<-m<<"\n";
    }
    if (m>1) {
        cout<<"0 "<<-m+1<<"\n";
        solve(n,m-2);
    }
}

int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    
    int tcs;
    cin>>tcs;
    for (int tc=0;tc<tcs;tc++) {
        int n,m;
        cin>>n>>m;
        solve(n-1,m-1);
    }
}

Test details

Test 1

Group: 1, 2

Verdict: ACCEPTED

input
25
1 1
1 2
1 3
1 4
...

correct output
0 1
0 2
0 -1
0 3
0 -2
...

user output
0 1
0 2
0 -1
0 3
0 -2
...

Test 2

Group: 1, 2

Verdict: ACCEPTED

input
100
5 5
5 5
5 5
5 5
...

correct output
4 4
-4 -3
4 2
-4 -1
4 0
...

user output
4 4
-3 -4
2 4
-1 -4
0 4
...

Test 3

Group: 2

Verdict: ACCEPTED

input
100
1 25
20 40
5 34
50 34
...

correct output
0 24
0 -23
0 22
0 -21
0 20
...

user output
0 24
0 -23
0 22
0 -21
0 20
...

Test 4

Group: 2

Verdict: ACCEPTED

input
100
46 47
41 39
46 36
46 30
...

correct output
45 46
-45 -45
45 44
-45 -43
45 42
...

user output
45 46
-44 -46
43 46
-42 -46
41 46
...

Test 5

Group: 2

Verdict: ACCEPTED

input
100
50 50
50 50
50 50
50 50
...

correct output
49 49
-49 -48
49 47
-49 -46
49 45
...

user output
49 49
-48 -49
47 49
-46 -49
45 49
...