QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#152674 | #6563. Four Square | BUET_POISSON# | WA | 1ms | 3780kb | C++20 | 2.2kb | 2023-08-28 16:50:20 | 2023-08-28 16:50:21 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
#define getbit(n, i) (((n) & (1LL << (i))) != 0)
#define setbit0(n, i) ((n) & (~(1LL << (i))))
#define setbit1(n, i) ((n) | (1LL << (i)))
#define togglebit(n, i) ((n) ^ (1LL << (i)))
#define lastone(n) ((n) & (-(n)))
char gap = 32;
#define int long long
#define ii pair<int, int>
#define ll long long
#define lll __int128_t
#define pb push_back
void solve() {
vector<ii> planes;
int tot_area = 0;
for (int i=0; i<4; i++) {
int a, b;
cin >> a >> b;
planes.pb({a, b});
tot_area += a*b;
}
sort(planes.begin(), planes.end());
int possible = 0;
do {
for (int i=0; i<(1<<4); i++) {
vector<ii> a(planes);
for (int j=0; j<4; j++) if ( (i>>j) & 1) {
swap(a[j].first, a[j].second);
}
int p = a[0].first + a[1].first;
int q = a[1].second + a[3].second;
int r = a[0].second + a[2].second;
int s = a[2].first + a[3].first;
if (p == q and q == r and r == s and p*q == tot_area) possible = 1;
if (a[0].second == (a[1].second + a[2].second + a[3].second)
and (a[1].first == a[2].first and a[2].first == a[3].first)
and (a[0].first + a[1].first == a[0].second)
and (a[0].first * a[0].first == tot_area)) possible = 1;
if (a[0].first + a[1].first + a[3].first == a[0].second and a[1].first == a[2].first and a[0].second == a[3].second
and a[0].second == a[1].second + a[2].second and a[0].second * a[0].second == tot_area)
possible = 1;
if (a[0].second == a[1].second and a[1].second == a[2].second and a[2].second == a[3].second
and a[0].second == a[0].first + a[1].first + a[2].first + a[3].first and a[0].second*a[0].second == tot_area)
possible = 1;
}
} while(next_permutation(planes.begin(), planes.end()));
cout << possible << endl;
}
signed main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
solve();
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3524kb
input:
1 1 1 1 1 1 1 1
output:
1
result:
ok single line: '1'
Test #2:
score: 0
Accepted
time: 1ms
memory: 3732kb
input:
3 1 3 3 2 2 3 3
output:
0
result:
ok single line: '0'
Test #3:
score: 0
Accepted
time: 0ms
memory: 3464kb
input:
2 8 2 8 2 8 2 8
output:
1
result:
ok single line: '1'
Test #4:
score: 0
Accepted
time: 0ms
memory: 3584kb
input:
5 3 5 5 3 3 3 5
output:
1
result:
ok single line: '1'
Test #5:
score: 0
Accepted
time: 1ms
memory: 3524kb
input:
1 2 4 8 16 32 64 128
output:
0
result:
ok single line: '0'
Test #6:
score: 0
Accepted
time: 1ms
memory: 3560kb
input:
4 4 2 1 4 4 2 1
output:
0
result:
ok single line: '0'
Test #7:
score: 0
Accepted
time: 1ms
memory: 3776kb
input:
995 51 559 565 154 536 56 780
output:
0
result:
ok single line: '0'
Test #8:
score: 0
Accepted
time: 1ms
memory: 3500kb
input:
391 694 540 42 240 937 691 246
output:
0
result:
ok single line: '0'
Test #9:
score: 0
Accepted
time: 1ms
memory: 3780kb
input:
519 411 782 710 299 45 21 397
output:
0
result:
ok single line: '0'
Test #10:
score: 0
Accepted
time: 1ms
memory: 3504kb
input:
96 960 948 18 108 82 371 576
output:
0
result:
ok single line: '0'
Test #11:
score: 0
Accepted
time: 1ms
memory: 3540kb
input:
3 2 4 3 3 1 1 4
output:
0
result:
ok single line: '0'
Test #12:
score: 0
Accepted
time: 1ms
memory: 3492kb
input:
4 3 1 2 4 4 3 2
output:
0
result:
ok single line: '0'
Test #13:
score: 0
Accepted
time: 1ms
memory: 3576kb
input:
4 4 1 3 5 4 2 5
output:
0
result:
ok single line: '0'
Test #14:
score: 0
Accepted
time: 1ms
memory: 3516kb
input:
1000 1000 1000 1000 1000 1000 1000 1000
output:
1
result:
ok single line: '1'
Test #15:
score: 0
Accepted
time: 1ms
memory: 3580kb
input:
1000 999 998 1000 997 1000 997 997
output:
1
result:
ok single line: '1'
Test #16:
score: -100
Wrong Answer
time: 0ms
memory: 3524kb
input:
1 3 3 3 3 3 4 7
output:
0
result:
wrong answer 1st lines differ - expected: '1', found: '0'