QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#796640 | #9620. osu!mania | Catbiscuit# | AC ✓ | 0ms | 3892kb | C++20 | 2.0kb | 2024-12-01 22:47:10 | 2024-12-01 22:47:10 |
Judging History
answer
#include <iostream>
#include <algorithm>
#include <map>
#include <cstring>
#include <string>
#include <vector>
#include <cctype>
#include <cmath>
#include <queue>
#include <set>
#include <functional>
#include <unordered_map>
using namespace std;
typedef long long LL;
typedef pair<LL, LL> PLL;
#define qwq ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
#define tcase \
LL t = read(); \
while (t--)
LL read()
{
LL sum = 0, fl = 1;
int ch = getchar();
for (; !isdigit(ch); ch = getchar())
if (ch == '-')
fl = -1;
for (; isdigit(ch); ch = getchar())
sum = sum * 10 + ch - '0';
return sum * fl;
}
// #define long double double
void solve()
{
// 0..9342
LL ppmax = read();
LL a = read(), b = read(), c = read(), d = read(), e = read(), f = read();
LL sum = a + b + c + d + e + f;
// cout << sum << endl;
long double acc = 1.0 * (300 * a + 300 * b + 200 * c + 100 * d + 50 * e + 0 * f) / (300 * sum);
// cout << acc << endl;
// cout << "tmp " << (300 * a + 300 * b + 200 * c + 100 * d + 50 * e + 0 * f) << endl;
acc = llroundl(acc * 10000) / 100.0;
// cout << cur_pp << endl;
long double pp = 0;
if (10 * (320 * a + 300 * b + 200 * c + 100 * d + 50 * e + 0 * f) > 8 * (320 * sum))
pp = (1.0 * (320 * a + 300 * b + 200 * c + 100 * d + 50 * e + 0 * f) * 5 * ppmax - 8 * 5 * ppmax * 32 * sum) / (320 * sum);
// cout << (LL)(pp * 10000) << endl;
// auto myround = [&](long double val)
// {
// LL down = val;
// LL up = down + 1;
// printf("%LF %LF\n", val - (long double)down, (long double)up - val);
// if (val - (long double)down < (long double)up - val)
// return down;
// return up;
// };
// printf("%Lf\n", pp * 1000000);
// cout << (LL)(pp * 10) % 10 << endl;
printf("%.2Lf", acc);
cout << "% ";
// cout << pp << endl;
printf("%lld\n", llroundl(pp));
}
int main()
{
tcase
solve();
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3892kb
input:
18 1279 4624 4458 1109 220 103 314 753 3604 3204 391 33 9 29 807 5173 3986 763 84 29 96 718 576 461 60 5 2 7 947 4058 3268 764 169 42 158 568 2660 1731 161 16 6 15 641 4181 3126 656 56 10 43 630 3029 2336 377 41 10 61 529 1991 1354 181 11 9 5 1802 8321 2335 115 19 11 27 1645 3965 1087 41 6 1 13 1688...
output:
91.54% 543 97.40% 543 95.75% 523 97.12% 513 93.38% 499 98.16% 444 96.19% 430 96.20% 423 97.74% 400 99.19% 1604 99.38% 1482 99.14% 1465 98.53% 1251 100.00% 2688 100.00% 1792 100.00% 3000 52.78% 0 0.00% 0
result:
ok 18 lines