QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#504828 | #9134. Building a Fence | ucup-team2307# | WA | 3ms | 3632kb | C++17 | 1.2kb | 2024-08-04 16:29:47 | 2024-08-04 16:29:48 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
#define rep(i, from, to) for (int i = from; i < (to); ++i)
#define all(x) x.begin(), x.end()
#define sz(x) (int)(x).size()
typedef long long ll;
typedef pair<int, int> pii;
typedef vector<int> vi;
bool can(ll a, ll b, ll c, ll sum) {
return a == sum || b == sum || c == sum ||
a+b == sum || a+c == sum || b+c == sum ||
a+b+c == sum;
}
ll solve(ll w, ll h, ll s) {
if(max(w, h) >= s) {
return (w + w + h + h + s - 1) / s;
}
if(w + h == s) {
return 2;
}
if(w + w + h + h > 3*s) {
return 4;
}
if(w + w + h + h == 3*s) {
return 3;
}
if(w + w == s || h + h == s) {
return 3;
}
//w, h < s and 2*(w+h) < 3*s
/*
5 segments max, 3 sides are covered by 1, but they can't be from same line
*/
if(can(s-w, s-w, s-h, h) || can(s-h, s-h, s-w, w))
return 3;
return 4;
}
int main() {
ios_base::sync_with_stdio(0);
cout.tie(0);
int T;
cin >> T;
while(T--) {
ll w, h, s;
cin >> w >> h >> s;
cout << solve(w, h, s) << '\n';
}
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3632kb
input:
7 7 9 4 1 1 2 1 1 4 4 6 2 3 3 5 10 6 4 1 11 5
output:
8 2 4 10 4 8 5
result:
ok 7 numbers
Test #2:
score: -100
Wrong Answer
time: 3ms
memory: 3576kb
input:
8000 1 1 1 1 1 2 1 1 3 1 1 4 1 1 5 1 1 6 1 1 7 1 1 8 1 1 9 1 1 10 1 1 11 1 1 12 1 1 13 1 1 14 1 1 15 1 1 16 1 1 17 1 1 18 1 1 19 1 1 20 1 2 1 1 2 2 1 2 3 1 2 4 1 2 5 1 2 6 1 2 7 1 2 8 1 2 9 1 2 10 1 2 11 1 2 12 1 2 13 1 2 14 1 2 15 1 2 16 1 2 17 1 2 18 1 2 19 1 2 20 1 3 1 1 3 2 1 3 3 1 3 4 1 3 5 1 3...
output:
4 2 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 6 3 2 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 8 4 3 2 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 10 5 4 3 2 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 12 6 4 3 3 2 4 4 4 3 4 4 4 4 4 4 4 4 4 4 14 7 5 4 3 3 2 4 4 4 4 3 4 4 4 4 4 4 4 4 16 8 6 4 4 3 3 2 4 4 4 4 4 3 4 4 4 4 4 4 18 9 6 5 4 3 3 3...
result:
wrong answer 43rd numbers differ - expected: '4', found: '3'