QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#752061 | #9620. osu!mania | Xiaoying0418 | AC ✓ | 0ms | 3856kb | C++14 | 3.3kb | 2024-11-15 21:50:59 | 2024-11-15 21:51:04 |
Judging History
answer
#include<bits/stdc++.h>
#define ff first
#define ss second
#define typet typename T
#define typeu typename U
#define types typename... Ts
#define tempt template < typet >
#define tempu template < typeu >
#define temps template < types >
#define final constexpr const
tempt struct range {
T b, e;
range (T b, T e): b(b), e(e) {}
T begin() const {return b;}
T end() const {return e;}
};
tempt range<T> make_range(T b, T e) {return range <T> (b, e);}
tempt struct is_cont {
static final bool value = false;
};
tempt struct is_cont<range<T>>{
static final bool value = true;
};
temps struct is_cont<std::vector<Ts...>>{
static final bool value = true;
};
temps struct is_cont<std::set<Ts...>>{
static final bool value = true;
};
temps struct is_cont<std::map<Ts...>>{
static final bool value = true;
};
template < typet, typeu > std::ostream &
operator << (std::ostream &os, const std::pair<T, U> &p) {
return os << '<' << p.ff << ',' << p.ss << '>';
}
tempt std::enable_if_t<is_cont<T>::value, std::ostream> &
operator << (std::ostream &os, const T &c) {
auto it = c.begin();
if (it == c.end()) return os << "{}";
for (os << '{' << *it; ++it != c.end(); os << ',' << *it);
return os << '}';
}
void dbg() {std::cerr << std::endl;}
template < typet, types > void dbg(T arg, Ts... args) {
std::cerr << ' ' << arg; dbg(args...);
}
#ifndef ONLINE_JUDGE
#define debug(arg...) do {std::cerr << "["#arg"] :"; dbg(arg);} while (false)
#else
#define debug(...) do {} while (false)
#endif
using i64 = long long;
using vi = std::vector<int>;
using vl = std::vector<i64>;
using pii = std::pair<int, int>;
using vp = std::vector<pii>;
using vvi = std::vector<vi>;
#define lowbit(x) ((x) & (-x))
#define all(x) x.begin(), x.end()
#define set_all(x, y) std::memset(x, y, sizeof(x))
#define set_n(x, y, n) std::memset(x, y, sizeof(decltype(*(x))) * (n))
tempt void Min(T &x, const T &y) {if (x > y) x = y;}
tempt void Max(T &x, const T &y) {if (x < y) x = y;}
final int mod = 998244353;
inline int add(int x, int y) { return x + y < mod ? x + y : x + y - mod; }
inline int sub(int x, int y) { return x < y ? mod + x - y : x - y; }
inline int mul(i64 x, int y) { return x * y % mod; }
inline void Add(int& x, int y) { x = add(x, y); }
inline void Sub(int& x, int y) { x = sub(x, y); }
inline void Mul(int& x, int y) { x = mul(x, y); }
int pow(int x, int y) {
int z = 1;
for (; y; y /= 2) {
if (y & 1) Mul(z, x);
Mul(x, x);
}
return z;
}
void solve(int cas) {
int ppmax, a, b, c, d, e, f;
std::cin >> ppmax >> a >> b >> c >> d >> e >> f;
std::cout << std::fixed << std::setprecision(2) << (1.0 * 300 * a + 300 * b + 200 * c + 100 * d + 50 * e) / (300 * (a + b + c + d + e + f)) * 100 << "%" << ' ';
//std::cout << std::fixed << std::setprecision(2) << (std::max(0.0, (1.0 * 320 * a + 300 * b + 200 * c + 100 * d + 50 * e) / (320 * (a + b + c + d + e + f)) - 0.8) * 5 * ppmax + 0.5) << '\n';
std::cout << int(std::max(0.0, (1.0 * 320 * a + 300 * b + 200 * c + 100 * d + 50 * e) / (320 * (a + b + c + d + e + f)) - 0.8) * 5 * ppmax + 0.500000001) << '\n';
}
signed main() {
std::cin.tie(nullptr) -> sync_with_stdio(false);
int T = 1;
std::cin >> T;
for (int cas = 1; cas <= T; cas++) {
solve(cas);
}
return 0;
}
/*
2
630
3029 2336 377 41 10 61
3000
20000 10000 0 0 0 0
*/
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3856kb
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