QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#566115 | #9308. World Cup | bigJ | WA | 0ms | 3684kb | C++20 | 1.0kb | 2024-09-15 23:04:37 | 2024-09-15 23:04:41 |
Judging History
answer
#include <bits/stdc++.h>
namespace stdv = std::views;
namespace stdr = std::ranges;
using i64 = long long;
template<typename A, typename B>
constexpr bool chmax(A& a, const B& b) {
a = (a > b) ? a : b;
return a == b;
}
template<typename A, typename B>
constexpr bool chmin(A& a, const B& b) {
a = (a < b) ? a : b;
return a == b;
}
constexpr int N = 32;
int a[N];
void Find() {
for (int i = 0; i < N; i++) {
std::cin >> a[i];
}
int x = a[0];
std::sort(a, a + N, std::greater());
if (x == a[N - 1] || x == a[N - 2]) {
std::cout << "32\n";
return;
}
int p = std::find(a, a + N, x) - a;
if (p == 0) {
std::cout << 1 << "\n";
} else {
std::cout << (2 << (std::__lg(p))) << "\n";
}
}
int main(int argc, const char* argv[]) {
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
int t;
std::cin >> t;
while (t--) {
Find();
}
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3668kb
input:
1 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
output:
1
result:
ok 1 number(s): "1"
Test #2:
score: -100
Wrong Answer
time: 0ms
memory: 3684kb
input:
32 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 2 1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 3 1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 4 1 2 3 5 6 7 8 9 10 11 12 13 14 15 ...
output:
32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 16 16 16 16 16 16 16 16 8 8 8 8 4 4 2 1
result:
wrong answer 3rd numbers differ - expected: '16', found: '32'