QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#419155 | #6677. Puzzle: Sashigane | bible_w# | AC ✓ | 1ms | 3916kb | C++20 | 2.8kb | 2024-05-23 18:17:38 | 2024-05-23 18:17:39 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
#define ll long long
int dx[] = {1,1,-1,-1};
int dy[] = {-1,1,1,-1};
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n,x,y;
cin >> n >> x >> y;
vector<array<int,4>> ans;
auto check = [&](int x,int y)->bool{
if (x <= n && x >= 1 && y <= n && y >= 1) return true;
return false;
};
int cnt = 1;
vector<pair<int,int>> next;
for (int i = 0;i < 4;i++){
int u = x + dx[i];
int v = y + dy[i];
if (check(u,v)) next.push_back({u,v});
else
next.push_back({-1e9,-1e9});
}
/* for (auto [u,v] : next){
cout << u << " " << v << "\n";
}*/
int cur = 1;
while (cnt != n * n){/*
cout << cur << ":\n";*/
int wkx = -1,wky = -1,mxx = -1,mxy = -1,h,w;
for (int i = 0;i < 4;i++){
auto [u,v] = next[i];
if (check(u,v)){
int tmpx = min(abs(u),n - u);
int tmpy = min(v,n - v);
if (tmpx >= mxx && tmpy >= mxy)
mxx = tmpx,mxy = tmpy,wkx = u,wky = v,h = cur * dx[i],w = cur * dy[i];
}
}
/* for (auto [u,v] : next){
cout << u << " " << v << "\n";
}*/
next.clear();
cnt += 2 * cur + 1;
cur++;
cur++;
if (wkx <= x && wky <= y){
ans.push_back({wkx,wky,cur - 2,cur - 2});
wkx--,wky--;
next.push_back({wkx,wky});
next.push_back({wkx + cur,wky});
next.push_back({wkx,wky + cur});
next.push_back({wkx + cur,wky + cur});
}else if (wkx <= x && wky >= y){
ans.push_back({wkx,wky,(cur - 2),-(cur - 2)});
wkx--,wky++;
next.push_back({wkx,wky});
next.push_back({wkx + cur,wky});
next.push_back({wkx + cur,wky - cur});
next.push_back({wkx,wky - cur});
}else if (wkx >= x && wky <= y){
ans.push_back({wkx,wky,-(cur - 2),(cur - 2)});
wkx++,wky--;
next.push_back({wkx,wky});
next.push_back({wkx,wky + cur});
next.push_back({wkx - cur,wky });
next.push_back({wkx - cur,wky + cur});
}else{
ans.push_back({wkx,wky,-(cur - 2),-(cur - 2)});
wkx++,wky++;
next.push_back({wkx,wky});
next.push_back({wkx - cur,wky});
next.push_back({wkx,wky - cur});
next.push_back({wkx - cur,wky - cur});
}
cur--;
}
cout << "Yes\n";
cout << ans.size() << "\n";
for (auto [i,j,k,l] : ans){
cout << i << ' ' << j << ' ' << k << ' ' << l << "\n";
}
return 0;
}
这程序好像有点Bug,我给组数据试试?
詳細信息
Test #1:
score: 100
Accepted
time: 1ms
memory: 3884kb
input:
5 3 4
output:
Yes 4 2 3 1 1 4 2 -2 2 1 1 3 3 5 5 -4 -4
result:
ok Correct. (1 test case)
Test #2:
score: 0
Accepted
time: 0ms
memory: 3880kb
input:
1 1 1
output:
Yes 0
result:
ok Correct. (1 test case)
Test #3:
score: 0
Accepted
time: 0ms
memory: 3840kb
input:
3 2 3
output:
Yes 2 1 2 1 1 3 1 -2 2
result:
ok Correct. (1 test case)
Test #4:
score: 0
Accepted
time: 0ms
memory: 3644kb
input:
10 10 5
output:
Yes 9 9 4 1 1 8 6 2 -2 7 3 3 3 6 7 4 -4 5 2 5 5 4 8 6 -6 3 1 7 7 2 9 8 -8 1 10 9 -9
result:
ok Correct. (1 test case)
Test #5:
score: 0
Accepted
time: 0ms
memory: 3808kb
input:
10 5 7
output:
Yes 9 4 6 1 1 6 5 -2 2 3 4 3 3 7 3 -4 4 2 8 5 -5 8 2 -6 6 1 9 7 -7 9 1 -8 8 10 10 -9 -9
result:
ok Correct. (1 test case)
Test #6:
score: 0
Accepted
time: 0ms
memory: 3644kb
input:
10 9 2
output:
Yes 9 8 3 1 -1 7 4 2 -2 6 5 3 -3 5 6 4 -4 4 7 5 -5 3 8 6 -6 2 1 7 7 1 9 8 -8 10 10 -9 -9
result:
ok Correct. (1 test case)
Test #7:
score: 0
Accepted
time: 0ms
memory: 3648kb
input:
10 6 10
output:
Yes 9 5 9 1 1 4 8 2 2 7 7 -3 3 3 6 4 4 8 5 -5 5 2 4 6 6 9 3 -7 7 1 2 8 8 10 1 -9 9
result:
ok Correct. (1 test case)
Test #8:
score: 0
Accepted
time: 0ms
memory: 3592kb
input:
10 8 4
output:
Yes 9 7 5 1 -1 6 6 2 -2 5 3 3 3 4 7 4 -4 3 2 5 5 2 8 6 -6 1 1 7 7 9 9 -8 -8 10 10 -9 -9
result:
ok Correct. (1 test case)
Test #9:
score: 0
Accepted
time: 1ms
memory: 3712kb
input:
999 396 693
output:
Yes 998 397 692 -1 1 398 691 -2 2 399 690 -3 3 400 689 -4 4 401 688 -5 5 402 687 -6 6 403 686 -7 7 404 685 -8 8 405 684 -9 9 406 683 -10 10 407 682 -11 11 408 681 -12 12 409 680 -13 13 410 679 -14 14 411 678 -15 15 412 677 -16 16 413 676 -17 17 414 675 -18 18 415 674 -19 19 416 673 -20 20 417 672 -2...
result:
ok Correct. (1 test case)
Test #10:
score: 0
Accepted
time: 1ms
memory: 3912kb
input:
999 963 827
output:
Yes 998 962 826 1 1 961 825 2 2 960 824 3 3 959 823 4 4 958 822 5 5 957 821 6 6 956 820 7 7 955 819 8 8 954 818 9 9 953 817 10 10 952 816 11 11 951 815 12 12 950 814 13 13 949 813 14 14 948 812 15 15 947 811 16 16 946 810 17 17 945 809 18 18 944 808 19 19 943 807 20 20 942 806 21 21 941 805 22 22 94...
result:
ok Correct. (1 test case)
Test #11:
score: 0
Accepted
time: 1ms
memory: 3676kb
input:
999 871 185
output:
Yes 998 870 186 1 -1 869 187 2 -2 868 188 3 -3 867 189 4 -4 866 190 5 -5 865 191 6 -6 864 192 7 -7 863 193 8 -8 862 194 9 -9 861 195 10 -10 860 196 11 -11 859 197 12 -12 858 198 13 -13 857 199 14 -14 856 200 15 -15 855 201 16 -16 854 202 17 -17 853 203 18 -18 852 204 19 -19 851 205 20 -20 850 206 21...
result:
ok Correct. (1 test case)
Test #12:
score: 0
Accepted
time: 0ms
memory: 3692kb
input:
999 787 812
output:
Yes 998 786 811 1 1 785 810 2 2 784 809 3 3 783 808 4 4 782 807 5 5 781 806 6 6 780 805 7 7 779 804 8 8 778 803 9 9 777 802 10 10 776 801 11 11 775 800 12 12 774 799 13 13 773 798 14 14 772 797 15 15 771 796 16 16 770 795 17 17 769 794 18 18 768 793 19 19 767 792 20 20 766 791 21 21 765 790 22 22 76...
result:
ok Correct. (1 test case)
Test #13:
score: 0
Accepted
time: 1ms
memory: 3884kb
input:
999 396 199
output:
Yes 998 397 200 -1 -1 398 201 -2 -2 399 202 -3 -3 400 203 -4 -4 401 204 -5 -5 402 205 -6 -6 403 206 -7 -7 404 207 -8 -8 405 208 -9 -9 406 209 -10 -10 407 210 -11 -11 408 211 -12 -12 409 212 -13 -13 410 213 -14 -14 411 214 -15 -15 412 215 -16 -16 413 216 -17 -17 414 217 -18 -18 415 218 -19 -19 416 21...
result:
ok Correct. (1 test case)
Test #14:
score: 0
Accepted
time: 0ms
memory: 3676kb
input:
999 1 1
output:
Yes 998 2 2 -1 -1 3 3 -2 -2 4 4 -3 -3 5 5 -4 -4 6 6 -5 -5 7 7 -6 -6 8 8 -7 -7 9 9 -8 -8 10 10 -9 -9 11 11 -10 -10 12 12 -11 -11 13 13 -12 -12 14 14 -13 -13 15 15 -14 -14 16 16 -15 -15 17 17 -16 -16 18 18 -17 -17 19 19 -18 -18 20 20 -19 -19 21 21 -20 -20 22 22 -21 -21 23 23 -22 -22 24 24 -23 -23 25 2...
result:
ok Correct. (1 test case)
Test #15:
score: 0
Accepted
time: 1ms
memory: 3676kb
input:
999 163 1
output:
Yes 998 164 2 -1 -1 165 3 -2 -2 166 4 -3 -3 167 5 -4 -4 168 6 -5 -5 169 7 -6 -6 170 8 -7 -7 171 9 -8 -8 172 10 -9 -9 173 11 -10 -10 174 12 -11 -11 175 13 -12 -12 176 14 -13 -13 177 15 -14 -14 178 16 -15 -15 179 17 -16 -16 180 18 -17 -17 181 19 -18 -18 182 20 -19 -19 183 21 -20 -20 184 22 -21 -21 185...
result:
ok Correct. (1 test case)
Test #16:
score: 0
Accepted
time: 1ms
memory: 3676kb
input:
999 999 1
output:
Yes 998 998 2 1 -1 997 3 2 -2 996 4 3 -3 995 5 4 -4 994 6 5 -5 993 7 6 -6 992 8 7 -7 991 9 8 -8 990 10 9 -9 989 11 10 -10 988 12 11 -11 987 13 12 -12 986 14 13 -13 985 15 14 -14 984 16 15 -15 983 17 16 -16 982 18 17 -17 981 19 18 -18 980 20 19 -19 979 21 20 -20 978 22 21 -21 977 23 22 -22 976 24 23 ...
result:
ok Correct. (1 test case)
Test #17:
score: 0
Accepted
time: 1ms
memory: 3908kb
input:
999 1 969
output:
Yes 998 2 968 -1 1 3 967 -2 2 4 966 -3 3 5 965 -4 4 6 964 -5 5 7 963 -6 6 8 962 -7 7 9 961 -8 8 10 960 -9 9 11 959 -10 10 12 958 -11 11 13 957 -12 12 14 956 -13 13 15 955 -14 14 16 954 -15 15 17 953 -16 16 18 952 -17 17 19 951 -18 18 20 950 -19 19 21 949 -20 20 22 948 -21 21 23 947 -22 22 24 946 -23...
result:
ok Correct. (1 test case)
Test #18:
score: 0
Accepted
time: 1ms
memory: 3720kb
input:
999 999 780
output:
Yes 998 998 779 1 1 997 778 2 2 996 777 3 3 995 776 4 4 994 775 5 5 993 774 6 6 992 773 7 7 991 772 8 8 990 771 9 9 989 770 10 10 988 769 11 11 987 768 12 12 986 767 13 13 985 766 14 14 984 765 15 15 983 764 16 16 982 763 17 17 981 762 18 18 980 761 19 19 979 760 20 20 978 759 21 21 977 758 22 22 97...
result:
ok Correct. (1 test case)
Test #19:
score: 0
Accepted
time: 1ms
memory: 3616kb
input:
999 1 999
output:
Yes 998 2 998 -1 1 3 997 -2 2 4 996 -3 3 5 995 -4 4 6 994 -5 5 7 993 -6 6 8 992 -7 7 9 991 -8 8 10 990 -9 9 11 989 -10 10 12 988 -11 11 13 987 -12 12 14 986 -13 13 15 985 -14 14 16 984 -15 15 17 983 -16 16 18 982 -17 17 19 981 -18 18 20 980 -19 19 21 979 -20 20 22 978 -21 21 23 977 -22 22 24 976 -23...
result:
ok Correct. (1 test case)
Test #20:
score: 0
Accepted
time: 1ms
memory: 3716kb
input:
999 686 999
output:
Yes 998 685 998 1 1 684 997 2 2 683 996 3 3 682 995 4 4 681 994 5 5 680 993 6 6 679 992 7 7 678 991 8 8 677 990 9 9 676 989 10 10 675 988 11 11 674 987 12 12 673 986 13 13 672 985 14 14 671 984 15 15 670 983 16 16 669 982 17 17 668 981 18 18 667 980 19 19 666 979 20 20 665 978 21 21 664 977 22 22 66...
result:
ok Correct. (1 test case)
Test #21:
score: 0
Accepted
time: 1ms
memory: 3652kb
input:
999 999 999
output:
Yes 998 998 998 1 1 997 997 2 2 996 996 3 3 995 995 4 4 994 994 5 5 993 993 6 6 992 992 7 7 991 991 8 8 990 990 9 9 989 989 10 10 988 988 11 11 987 987 12 12 986 986 13 13 985 985 14 14 984 984 15 15 983 983 16 16 982 982 17 17 981 981 18 18 980 980 19 19 979 979 20 20 978 978 21 21 977 977 22 22 97...
result:
ok Correct. (1 test case)
Test #22:
score: 0
Accepted
time: 1ms
memory: 3672kb
input:
1000 757 728
output:
Yes 999 756 727 1 1 755 726 2 2 754 725 3 3 753 724 4 4 752 723 5 5 751 722 6 6 750 721 7 7 749 720 8 8 748 719 9 9 747 718 10 10 746 717 11 11 745 716 12 12 744 715 13 13 743 714 14 14 742 713 15 15 741 712 16 16 740 711 17 17 739 710 18 18 738 709 19 19 737 708 20 20 736 707 21 21 735 706 22 22 73...
result:
ok Correct. (1 test case)
Test #23:
score: 0
Accepted
time: 0ms
memory: 3680kb
input:
1000 132 993
output:
Yes 999 133 992 -1 1 134 991 -2 2 135 990 -3 3 136 989 -4 4 137 988 -5 5 138 987 -6 6 139 986 -7 7 140 985 -8 8 141 984 -9 9 142 983 -10 10 143 982 -11 11 144 981 -12 12 145 980 -13 13 146 979 -14 14 147 978 -15 15 148 977 -16 16 149 976 -17 17 150 975 -18 18 151 974 -19 19 152 973 -20 20 153 972 -2...
result:
ok Correct. (1 test case)
Test #24:
score: 0
Accepted
time: 1ms
memory: 3844kb
input:
1000 703 499
output:
Yes 999 702 500 1 -1 701 501 2 -2 700 498 3 3 699 502 4 -4 698 497 5 5 697 503 6 -6 696 496 7 7 695 504 8 -8 694 495 9 9 693 505 10 -10 692 494 11 11 691 506 12 -12 690 493 13 13 689 507 14 -14 688 492 15 15 687 508 16 -16 686 491 17 17 685 509 18 -18 684 490 19 19 683 510 20 -20 682 489 21 21 681 5...
result:
ok Correct. (1 test case)
Test #25:
score: 0
Accepted
time: 0ms
memory: 3716kb
input:
1000 910 298
output:
Yes 999 909 299 1 -1 908 300 2 -2 907 301 3 -3 906 302 4 -4 905 303 5 -5 904 304 6 -6 903 305 7 -7 902 306 8 -8 901 307 9 -9 900 308 10 -10 899 309 11 -11 898 310 12 -12 897 311 13 -13 896 312 14 -14 895 313 15 -15 894 314 16 -16 893 315 17 -17 892 316 18 -18 891 317 19 -19 890 318 20 -20 889 319 21...
result:
ok Correct. (1 test case)
Test #26:
score: 0
Accepted
time: 1ms
memory: 3612kb
input:
1000 171 322
output:
Yes 999 172 323 -1 -1 173 324 -2 -2 174 325 -3 -3 175 326 -4 -4 176 327 -5 -5 177 328 -6 -6 178 329 -7 -7 179 330 -8 -8 180 331 -9 -9 181 332 -10 -10 182 333 -11 -11 183 334 -12 -12 184 335 -13 -13 185 336 -14 -14 186 337 -15 -15 187 338 -16 -16 188 339 -17 -17 189 340 -18 -18 190 341 -19 -19 191 34...
result:
ok Correct. (1 test case)
Test #27:
score: 0
Accepted
time: 1ms
memory: 3916kb
input:
1000 1 1
output:
Yes 999 2 2 -1 -1 3 3 -2 -2 4 4 -3 -3 5 5 -4 -4 6 6 -5 -5 7 7 -6 -6 8 8 -7 -7 9 9 -8 -8 10 10 -9 -9 11 11 -10 -10 12 12 -11 -11 13 13 -12 -12 14 14 -13 -13 15 15 -14 -14 16 16 -15 -15 17 17 -16 -16 18 18 -17 -17 19 19 -18 -18 20 20 -19 -19 21 21 -20 -20 22 22 -21 -21 23 23 -22 -22 24 24 -23 -23 25 2...
result:
ok Correct. (1 test case)
Test #28:
score: 0
Accepted
time: 1ms
memory: 3672kb
input:
1000 480 1
output:
Yes 999 481 2 -1 -1 482 3 -2 -2 483 4 -3 -3 484 5 -4 -4 485 6 -5 -5 486 7 -6 -6 487 8 -7 -7 488 9 -8 -8 489 10 -9 -9 490 11 -10 -10 491 12 -11 -11 492 13 -12 -12 493 14 -13 -13 494 15 -14 -14 495 16 -15 -15 496 17 -16 -16 497 18 -17 -17 498 19 -18 -18 499 20 -19 -19 500 21 -20 -20 501 22 -21 -21 502...
result:
ok Correct. (1 test case)
Test #29:
score: 0
Accepted
time: 0ms
memory: 3844kb
input:
1000 1000 1
output:
Yes 999 999 2 1 -1 998 3 2 -2 997 4 3 -3 996 5 4 -4 995 6 5 -5 994 7 6 -6 993 8 7 -7 992 9 8 -8 991 10 9 -9 990 11 10 -10 989 12 11 -11 988 13 12 -12 987 14 13 -13 986 15 14 -14 985 16 15 -15 984 17 16 -16 983 18 17 -17 982 19 18 -18 981 20 19 -19 980 21 20 -20 979 22 21 -21 978 23 22 -22 977 24 23 ...
result:
ok Correct. (1 test case)
Test #30:
score: 0
Accepted
time: 1ms
memory: 3692kb
input:
1000 1 339
output:
Yes 999 2 340 -1 -1 3 341 -2 -2 4 342 -3 -3 5 343 -4 -4 6 344 -5 -5 7 345 -6 -6 8 346 -7 -7 9 347 -8 -8 10 348 -9 -9 11 349 -10 -10 12 350 -11 -11 13 351 -12 -12 14 352 -13 -13 15 353 -14 -14 16 354 -15 -15 17 355 -16 -16 18 356 -17 -17 19 357 -18 -18 20 358 -19 -19 21 359 -20 -20 22 360 -21 -21 23 ...
result:
ok Correct. (1 test case)
Test #31:
score: 0
Accepted
time: 0ms
memory: 3680kb
input:
1000 1000 161
output:
Yes 999 999 162 1 -1 998 163 2 -2 997 164 3 -3 996 165 4 -4 995 166 5 -5 994 167 6 -6 993 168 7 -7 992 169 8 -8 991 170 9 -9 990 171 10 -10 989 172 11 -11 988 173 12 -12 987 174 13 -13 986 175 14 -14 985 176 15 -15 984 177 16 -16 983 178 17 -17 982 179 18 -18 981 180 19 -19 980 181 20 -20 979 182 21...
result:
ok Correct. (1 test case)
Test #32:
score: 0
Accepted
time: 1ms
memory: 3564kb
input:
1000 1 1000
output:
Yes 999 2 999 -1 1 3 998 -2 2 4 997 -3 3 5 996 -4 4 6 995 -5 5 7 994 -6 6 8 993 -7 7 9 992 -8 8 10 991 -9 9 11 990 -10 10 12 989 -11 11 13 988 -12 12 14 987 -13 13 15 986 -14 14 16 985 -15 15 17 984 -16 16 18 983 -17 17 19 982 -18 18 20 981 -19 19 21 980 -20 20 22 979 -21 21 23 978 -22 22 24 977 -23...
result:
ok Correct. (1 test case)
Test #33:
score: 0
Accepted
time: 1ms
memory: 3656kb
input:
1000 759 1000
output:
Yes 999 758 999 1 1 757 998 2 2 756 997 3 3 755 996 4 4 754 995 5 5 753 994 6 6 752 993 7 7 751 992 8 8 750 991 9 9 749 990 10 10 748 989 11 11 747 988 12 12 746 987 13 13 745 986 14 14 744 985 15 15 743 984 16 16 742 983 17 17 741 982 18 18 740 981 19 19 739 980 20 20 738 979 21 21 737 978 22 22 73...
result:
ok Correct. (1 test case)
Test #34:
score: 0
Accepted
time: 0ms
memory: 3652kb
input:
1000 1000 1000
output:
Yes 999 999 999 1 1 998 998 2 2 997 997 3 3 996 996 4 4 995 995 5 5 994 994 6 6 993 993 7 7 992 992 8 8 991 991 9 9 990 990 10 10 989 989 11 11 988 988 12 12 987 987 13 13 986 986 14 14 985 985 15 15 984 984 16 16 983 983 17 17 982 982 18 18 981 981 19 19 980 980 20 20 979 979 21 21 978 978 22 22 97...
result:
ok Correct. (1 test case)
Test #35:
score: 0
Accepted
time: 0ms
memory: 3804kb
input:
2 1 1
output:
Yes 1 2 2 -1 -1
result:
ok Correct. (1 test case)
Test #36:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
2 1 2
output:
Yes 1 2 1 -1 1
result:
ok Correct. (1 test case)
Test #37:
score: 0
Accepted
time: 0ms
memory: 3640kb
input:
2 2 1
output:
Yes 1 1 2 1 -1
result:
ok Correct. (1 test case)
Test #38:
score: 0
Accepted
time: 0ms
memory: 3640kb
input:
2 2 2
output:
Yes 1 1 1 1 1
result:
ok Correct. (1 test case)
Test #39:
score: 0
Accepted
time: 1ms
memory: 3908kb
input:
810 114 514
output:
Yes 809 115 513 -1 1 116 512 -2 2 117 511 -3 3 118 510 -4 4 119 509 -5 5 120 508 -6 6 121 507 -7 7 122 506 -8 8 123 505 -9 9 124 504 -10 10 125 503 -11 11 126 502 -12 12 127 501 -13 13 128 500 -14 14 129 499 -15 15 130 498 -16 16 131 497 -17 17 132 496 -18 18 133 495 -19 19 134 494 -20 20 135 493 -2...
result:
ok Correct. (1 test case)
Test #40:
score: 0
Accepted
time: 0ms
memory: 3652kb
input:
810 514 114
output:
Yes 809 513 115 1 -1 512 116 2 -2 511 117 3 -3 510 118 4 -4 509 119 5 -5 508 120 6 -6 507 121 7 -7 506 122 8 -8 505 123 9 -9 504 124 10 -10 503 125 11 -11 502 126 12 -12 501 127 13 -13 500 128 14 -14 499 129 15 -15 498 130 16 -16 497 131 17 -17 496 132 18 -18 495 133 19 -19 494 134 20 -20 493 135 21...
result:
ok Correct. (1 test case)