| Task: | Distances |
| Sender: | Daniel_1997 |
| Submission time: | 2026-04-17 11:16:12 +0300 |
| Language: | C++ (C++17) |
| Status: | READY |
| Result: | 17 |
| subtask | verdict | score |
|---|---|---|
| #1 | ACCEPTED | 11 |
| #2 | RUNTIME ERROR | 0 |
| #3 | ACCEPTED | 6 |
| #4 | WRONG ANSWER | 0 |
| #5 | TIME LIMIT EXCEEDED | 0 |
| #6 | WRONG ANSWER | 0 |
| test | verdict | time | subtask | |
|---|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | 1, 4, 6 | details |
| #2 | ACCEPTED | 0.00 s | 1, 2, 3, 4, 5, 6 | details |
| #3 | ACCEPTED | 0.00 s | 1, 3, 4, 5, 6 | details |
| #4 | ACCEPTED | 0.00 s | 1, 2, 4, 6 | details |
| #5 | ACCEPTED | 0.00 s | 1, 3, 4, 5, 6 | details |
| #6 | ACCEPTED | 0.00 s | 1, 4, 6 | details |
| #7 | ACCEPTED | 0.00 s | 1, 4, 6 | details |
| #8 | ACCEPTED | 0.00 s | 1, 2, 4, 6 | details |
| #9 | ACCEPTED | 0.00 s | 1, 3, 4, 5, 6 | details |
| #10 | ACCEPTED | 0.00 s | 1, 4, 5, 6 | details |
| #11 | ACCEPTED | 0.00 s | 1, 4, 6 | details |
| #12 | ACCEPTED | 0.00 s | 1, 4, 6 | details |
| #13 | ACCEPTED | 0.01 s | 1, 4, 6 | details |
| #14 | ACCEPTED | 0.00 s | 1, 6 | details |
| #15 | ACCEPTED | 0.01 s | 1, 2, 6 | details |
| #16 | WRONG ANSWER | 0.00 s | 4, 6 | details |
| #17 | WRONG ANSWER | 0.00 s | 4, 6 | details |
| #18 | ACCEPTED | 0.01 s | 3, 4, 5, 6 | details |
| #19 | TIME LIMIT EXCEEDED | -- | 4, 5, 6 | details |
| #20 | TIME LIMIT EXCEEDED | -- | 4, 5, 6 | details |
| #21 | TIME LIMIT EXCEEDED | -- | 5, 6 | details |
| #22 | TIME LIMIT EXCEEDED | -- | 5, 6 | details |
| #23 | RUNTIME ERROR | 0.00 s | 2, 6 | details |
| #24 | ACCEPTED | 0.01 s | 3, 4, 5, 6 | details |
| #25 | TIME LIMIT EXCEEDED | -- | 4, 5, 6 | details |
| #26 | TIME LIMIT EXCEEDED | -- | 4, 5, 6 | details |
| #27 | TIME LIMIT EXCEEDED | -- | 5, 6 | details |
| #28 | TIME LIMIT EXCEEDED | -- | 5, 6 | details |
| #29 | RUNTIME ERROR | 0.00 s | 2, 6 | details |
| #30 | ACCEPTED | 0.01 s | 3, 4, 5, 6 | details |
| #31 | WRONG ANSWER | 0.00 s | 4, 5, 6 | details |
| #32 | WRONG ANSWER | 0.00 s | 4, 5, 6 | details |
| #33 | TIME LIMIT EXCEEDED | -- | 4, 5, 6 | details |
| #34 | TIME LIMIT EXCEEDED | -- | 5, 6 | details |
| #35 | TIME LIMIT EXCEEDED | -- | 5, 6 | details |
| #36 | TIME LIMIT EXCEEDED | -- | 5, 6 | details |
| #37 | RUNTIME ERROR | 0.00 s | 6 | details |
| #38 | RUNTIME ERROR | 0.00 s | 6 | details |
| #39 | RUNTIME ERROR | 0.00 s | 2, 6 | details |
| #40 | RUNTIME ERROR | 0.01 s | 6 | details |
| #41 | RUNTIME ERROR | 0.00 s | 6 | details |
| #42 | RUNTIME ERROR | 0.00 s | 6 | details |
| #43 | RUNTIME ERROR | 0.01 s | 6 | details |
| #44 | RUNTIME ERROR | 0.00 s | 6 | details |
Compiler report
input/code.cpp: In function 'void solve()':
input/code.cpp:85:44: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
85 | for(int i1 = 0; i1 < aux.size(); i1++)
| ~~~^~~~~~~~~~~~
input/code.cpp:139:48: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
139 | for(int i1 = 0; i1 < aux.size(); i1++)
| ~~~^~~~~~~~~~~~
input/code.cpp:46:9: warning: unused variable 'ans' [-Wunused-variable]
46 | int ans = 0;
| ^~~
input/code.cpp: In function 'int32_t main()':
input/code.cpp:226:9: warning: unused variable 't' [-Wunused-variable]
2...Code
#include <bits/stdc++.h>
using namespace std;
#define fr first
#define sc second
#define pb push_back
#define int long long
#define all(x) x.begin(), x.end()
#define ios ios_base::sync_with_stdio(0); cin.tie(0), cout.tie(0)
const int oo = 1e18;
const int mod = 1e8 + 7;
const int my[8]={0, 0, 1, -1, 1, 1, -1, -1};
const int mx[8]={1, -1, 0, 0, 1, -1, -1, 1};
int pw(int x)
{
return x * x;
}
int dist(int x1, int y1, int x2, int y2)
{
return pw(x1 - x2) + pw(y1 - y2);
}
int n,k;
void solve() {
if(n == 1)
{
cout << 1 << " " << 1 << endl;
return;
}
vector<bool> square(1000001, 0);
for(int i = 1; i <= 1000; i++)
{
square[i * i] = 1;
}
vector<pair<int,int> > v(n + 1, {1,1});
int ans = 0;
if(n == 2)
{
for(int i = 1; ; i++)
{
for(int j = 1; j <= i; j++)
{
int diff = dist(1, 1, i, j);
int cont = square[diff];
if(cont == k && diff)
{
cout << 1 << " " << 1 << endl;
cout << i << " " << j << endl;
return;
}
}
}
}
if(n == 3)
{
for(int i = 1; ; i++)
{
bool f = 0;
for(int j = 1; j <= i; j++)
{
for(int k2 = 1; k2 <= i; k2++)
{
for(int l = 1; l <= k; l++)
{
vector<pair<int,int> >aux;
aux.pb({1,1});
aux.pb({i,j});
aux.pb({k2,l});
int cont = 0;
for(int i1 = 0; i1 < aux.size(); i1++)
{
auto[x1, y1] = aux[i1];
for(int i2 = 0; i2 < i1; i2++)
{
auto[x2, y2] = aux[i2];
int diff = dist(x1, y1, x2, y2);
if(diff == 0)
{
f = 1;
break;
}
cont += square[diff];
}
}
if(cont == k && !f)
{
for(auto oo : aux)
{
cout << oo.fr << " " << oo.sc << endl;
}
return;
}
f = 0;
}
}
}
}
}
for(int i = 1; ; i++)
{
bool f = 0;
for(int j = 1; j <= i; j++)
{
for(int k2 = 1; k2 <= i; k2++)
{
for(int l = 1; l <= k; l++)
{
for(int p1 = 1; p1 <= j; p1++)
{
for(int p2 = 1; p2 <= p1; p2++)
{
vector<pair<int,int> >aux;
aux.pb({1,1});
aux.pb({i,j});
aux.pb({k2,l});
aux.pb({p1,p2});
int cont = 0;
for(int i1 = 0; i1 < aux.size(); i1++)
{
auto[x1, y1] = aux[i1];
for(int i2 = 0; i2 < i1; i2++)
{
auto[x2, y2] = aux[i2];
int diff = dist(x1, y1, x2, y2);
if(diff == 0)
{
f = 1;
break;
}
cont += square[diff];
}
}
if(cont == k && !f)
{
for(auto oo : aux)
{
cout << oo.fr << " " << oo.sc << endl;
}
return;
}
f = 0;
}
}
}
}
}
}
}
void solve2() {
vector<bool> square(1000001, 0);
for(int i = 0; i <= 1000; i++)
{
square[i * i] = 1;
}
vector<pair<int,int> > v(n + 1, {1,1});
for(int i = 2; i <= n; i++)
{
bool f = 0;
for(int j = 1; ; j++)
{
for(int k = 1; k <= j;k++)
{
int x1 = j, y1 = k;
f = 0;
for(int l = 1; l < i; l++)
{
auto[x2, y2] = v[l];
int diff = pw(x1 - x2) + pw(y1 - y2);
if(square[diff])
{
f = 1;
break;
}
}
if(!f)
{
v[i] = {x1, y1};
break;
}
}
if(!f)break;
}
}
for(int i = 1; i <= n; i++)
{
cout << v[i].fr << " " << v[i].sc << endl;
}
}
int32_t main() {
ios;
int t = 1;
cin >> n >> k;
if(k)solve();
else solve2();
}
Test details
Test 1
Subtask: 1, 4, 6
Verdict: ACCEPTED
| input |
|---|
| 3 2 |
| correct output |
|---|
| 1 1 1 2 2 2 |
| user output |
|---|
| 1 1 2 1 1 2 |
Test 2
Subtask: 1, 2, 3, 4, 5, 6
Verdict: ACCEPTED
| input |
|---|
| 1 0 |
| correct output |
|---|
| 1 0 |
| user output |
|---|
| 1 1 |
Test 3
Subtask: 1, 3, 4, 5, 6
Verdict: ACCEPTED
| input |
|---|
| 2 0 |
| correct output |
|---|
| 1 0 804289383 846930886 |
| user output |
|---|
| 1 1 2 2 |
Test 4
Subtask: 1, 2, 4, 6
Verdict: ACCEPTED
| input |
|---|
| 2 1 |
| correct output |
|---|
| 1 0 2 0 |
| user output |
|---|
| 1 1 2 1 |
Test 5
Subtask: 1, 3, 4, 5, 6
Verdict: ACCEPTED
| input |
|---|
| 3 0 |
| correct output |
|---|
| 1 0 804289383 846930886 681692777 714636915 |
| user output |
|---|
| 1 1 2 2 3 3 |
Test 6
Subtask: 1, 4, 6
Verdict: ACCEPTED
| input |
|---|
| 3 1 |
| correct output |
|---|
| 1 0 2 0 804289383 846930886 |
| user output |
|---|
| 1 1 3 2 2 1 |
Test 7
Subtask: 1, 4, 6
Verdict: ACCEPTED
| input |
|---|
| 3 2 |
| correct output |
|---|
| 1 1 1 2 2 2 |
| user output |
|---|
| 1 1 2 1 1 2 |
Test 8
Subtask: 1, 2, 4, 6
Verdict: ACCEPTED
| input |
|---|
| 3 3 |
| correct output |
|---|
| 1 0 2 0 3 0 |
| user output |
|---|
| 1 1 3 1 2 1 |
Test 9
Subtask: 1, 3, 4, 5, 6
Verdict: ACCEPTED
| input |
|---|
| 4 0 |
| correct output |
|---|
| 1 0 804289383 846930886 681692777 714636915 957747793 424238335 |
| user output |
|---|
| 1 1 2 2 3 3 4 4 |
Test 10
Subtask: 1, 4, 5, 6
Verdict: ACCEPTED
| input |
|---|
| 4 1 |
| correct output |
|---|
| 1 0 2 0 804289383 846930886 681692777 714636915 |
| user output |
|---|
| 1 1 4 3 2 1 3 2 |
Test 11
Subtask: 1, 4, 6
Verdict: ACCEPTED
| input |
|---|
| 4 2 |
| correct output |
|---|
| 21392 0 1 0 0 510510 804289383 846930886 |
| user output |
|---|
| 1 1 3 3 1 2 2 1 |
Test 12
Subtask: 1, 4, 6
Verdict: ACCEPTED
| input |
|---|
| 4 3 |
| correct output |
|---|
| 1 0 2 0 3 0 804289383 846930886 |
| user output |
|---|
| 1 1 2 2 1 3 2 1 |
Test 13
Subtask: 1, 4, 6
Verdict: ACCEPTED
| input |
|---|
| 4 4 |
| correct output |
|---|
| 21392 0 1 0 2 0 0 510510 |
| user output |
|---|
| 1 1 2 2 1 2 2 1 |
Test 14
Subtask: 1, 6
Verdict: ACCEPTED
| input |
|---|
| 4 5 |
| correct output |
|---|
| 21392 0 22600 0 1 0 0 510510 |
| user output |
|---|
| 1 1 4 4 4 5 4 1 |
Test 15
Subtask: 1, 2, 6
Verdict: ACCEPTED
| input |
|---|
| 4 6 |
| correct output |
|---|
| 1 0 2 0 3 0 4 0 |
| user output |
|---|
| 1 1 9 7 9 1 5 4 |
Test 16
Subtask: 4, 6
Verdict: WRONG ANSWER
| input |
|---|
| 5 5 |
| correct output |
|---|
| 21392 0 22600 0 1 0 0 510510 804289383 846930886 |
| user output |
|---|
| 1 1 4 4 4 5 4 1 |
Test 17
Subtask: 4, 6
Verdict: WRONG ANSWER
| input |
|---|
| 6 5 |
| correct output |
|---|
| 21392 0 22600 0 1 0 0 510510 804289383 846930886 ... |
| user output |
|---|
| 1 1 4 4 4 5 4 1 |
Test 18
Subtask: 3, 4, 5, 6
Verdict: ACCEPTED
| input |
|---|
| 98 0 |
| correct output |
|---|
| 1 0 804289383 846930886 681692777 714636915 957747793 424238335 719885386 649760492 ... |
| user output |
|---|
| 1 1 2 2 3 3 4 4 5 5 ... |
Test 19
Subtask: 4, 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 98 97 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 20
Subtask: 4, 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 98 98 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 21
Subtask: 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 98 1185 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 22
Subtask: 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 98 1188 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 23
Subtask: 2, 6
Verdict: RUNTIME ERROR
| input |
|---|
| 98 4753 |
| correct output |
|---|
| 1 0 2 0 3 0 4 0 5 0 ... |
| user output |
|---|
| (empty) |
Test 24
Subtask: 3, 4, 5, 6
Verdict: ACCEPTED
| input |
|---|
| 99 0 |
| correct output |
|---|
| 1 0 804289383 846930886 681692777 714636915 957747793 424238335 719885386 649760492 ... |
| user output |
|---|
| 1 1 2 2 3 3 4 4 5 5 ... |
Test 25
Subtask: 4, 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 99 98 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 26
Subtask: 4, 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 99 99 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 27
Subtask: 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 99 1201 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 28
Subtask: 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 99 1212 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 29
Subtask: 2, 6
Verdict: RUNTIME ERROR
| input |
|---|
| 99 4851 |
| correct output |
|---|
| 1 0 2 0 3 0 4 0 5 0 ... |
| user output |
|---|
| (empty) |
Test 30
Subtask: 3, 4, 5, 6
Verdict: ACCEPTED
| input |
|---|
| 100 0 |
| correct output |
|---|
| 1 0 804289383 846930886 681692777 714636915 957747793 424238335 719885386 649760492 ... |
| user output |
|---|
| 1 1 2 2 3 3 4 4 5 5 ... |
Test 31
Subtask: 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 100 1 |
| correct output |
|---|
| 1 0 2 0 804289383 846930886 681692777 714636915 957747793 424238335 ... |
| user output |
|---|
| 1 1 4 3 2 1 3 2 |
Test 32
Subtask: 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 100 5 |
| correct output |
|---|
| 21392 0 22600 0 1 0 0 510510 804289383 846930886 ... |
| user output |
|---|
| 1 1 4 4 4 5 4 1 |
Test 33
Subtask: 4, 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 100 100 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 34
Subtask: 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 100 1000 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 35
Subtask: 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 100 1232 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 36
Subtask: 5, 6
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 100 1237 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 37
Subtask: 6
Verdict: RUNTIME ERROR
| input |
|---|
| 100 2222 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 38
Subtask: 6
Verdict: RUNTIME ERROR
| input |
|---|
| 100 3395 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 39
Subtask: 2, 6
Verdict: RUNTIME ERROR
| input |
|---|
| 100 4950 |
| correct output |
|---|
| 1 0 2 0 3 0 4 0 5 0 ... |
| user output |
|---|
| (empty) |
Test 40
Subtask: 6
Verdict: RUNTIME ERROR
| input |
|---|
| 100 4949 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 41
Subtask: 6
Verdict: RUNTIME ERROR
| input |
|---|
| 100 4948 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 42
Subtask: 6
Verdict: RUNTIME ERROR
| input |
|---|
| 100 4930 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 43
Subtask: 6
Verdict: RUNTIME ERROR
| input |
|---|
| 100 4920 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
Test 44
Subtask: 6
Verdict: RUNTIME ERROR
| input |
|---|
| 100 4900 |
| correct output |
|---|
| 21392 0 22600 0 30056 0 34848 0 38584 0 ... |
| user output |
|---|
| (empty) |
