QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#583607 | #9355. Keeping Rabbits | sinbad | AC ✓ | 329ms | 4600kb | C++20 | 4.0kb | 2024-09-22 20:49:05 | 2024-09-22 20:49:07 |
Judging History
answer
#define LOCAL
#define _USE_MATH_DEFINES
#include <array>
#include <cassert>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <iomanip>
#include <string>
#include <sstream>
#include <vector>
#include <queue>
#include <stack>
#include <list>
#include <set>
#include <map>
#include <unordered_set>
#include <unordered_map>
#include <algorithm>
#include <complex>
#include <cmath>
#include <numeric>
#include <bitset>
#include <functional>
#include <random>
#include <ctime>
using namespace std;
template <typename A, typename B>
ostream& operator <<(ostream& out, const pair<A, B>& a) {
out << "(" << a.first << "," << a.second << ")";
return out;
}
template <typename T, size_t N>
ostream& operator <<(ostream& out, const array<T, N>& a) {
out << "["; bool first = true;
for (auto& v : a) { out << (first ? "" : ", "); out << v; first = 0;} out << "]";
return out;
}
template <typename T>
ostream& operator <<(ostream& out, const vector<T>& a) {
out << "["; bool first = true;
for (auto v : a) { out << (first ? "" : ", "); out << v; first = 0;} out << "]";
return out;
}
template <typename T, class Cmp>
ostream& operator <<(ostream& out, const set<T, Cmp>& a) {
out << "{"; bool first = true;
for (auto& v : a) { out << (first ? "" : ", "); out << v; first = 0;} out << "}";
return out;
}
template <typename T, class Cmp>
ostream& operator <<(ostream& out, const multiset<T, Cmp>& a) {
out << "{"; bool first = true;
for (auto& v : a) { out << (first ? "" : ", "); out << v; first = 0;} out << "}";
return out;
}
template <typename U, typename T, class Cmp>
ostream& operator <<(ostream& out, const map<U, T, Cmp>& a) {
out << "{"; bool first = true;
for (auto& p : a) { out << (first ? "" : ", "); out << p.first << ":" << p.second; first = 0;} out << "}";
return out;
}
#ifdef LOCAL
#define trace(...) __f(#__VA_ARGS__, __VA_ARGS__)
#else
#define trace(...) 42
#endif
template <typename Arg1>
void __f(const char* name, Arg1&& arg1){
cerr << name << ": " << arg1 << endl;
}
template <typename Arg1, typename... Args>
void __f(const char* names, Arg1&& arg1, Args&&... args){
const char* comma = strchr(names + 1, ',');
cerr.write(names, comma - names) << ": " << arg1 << " |";
__f(comma + 1, args...);
}
template <class T> auto vect(const T& v, int n) { return vector<T>(n, v); }
template <class T, class... D> auto vect(const T& v, int n, D... m) {
return vector<decltype(vect(v, m...))>(n, vect(v, m...));
}
using int64 = long long;
using int128 = __int128_t;
using ii = pair<int, int>;
#define SZ(x) (int)((x).size())
template <typename T> static constexpr T inf = numeric_limits<T>::max() / 2;
const int MOD = 1e9 + 7;
// const int MOD = 998244353;
mt19937_64 mrand(random_device{}());
int64 rnd(int64 x) { return mrand() % x; }
constexpr inline int lg2(int64 x) { return x == 0 ? -1 : sizeof(int64) * 8 - 1 - __builtin_clzll(x); }
constexpr inline int64 p2ceil(int64 x) { return 1LL << (lg2(x - 1) + 1); }
template <class T> void out(const vector<T>& a) { for (int i = 0; i < SZ(a); ++i) cout << a[i] << " \n"[i + 1 == SZ(a)]; }
template <class T> bool ckmin(T& a, const T& b) { return b < a ? a = b, 1 : 0; }
template <class T> bool ckmax(T& a, const T& b) { return a < b ? a = b, 1 : 0; }
template <class T> void dedup(vector<T>& v) { sort(v.begin(), v.end()); v.erase(unique(v.begin(), v.end()), v.end()); }
inline void add_mod(int& x, int y) { x += y; if (x >= MOD) x -= MOD; }
inline void sub_mod(int& x, int y) { x += MOD - y; if (x >= MOD) x -= MOD; }
inline int mod(int x) { return x >= MOD ? x - MOD : x; }
struct fast_ios {
fast_ios() {
cin.tie(nullptr);
ios::sync_with_stdio(false);
cout << fixed << setprecision(10);
};
} fast_ios_;
int main() {
int cas;
cin >> cas;
while (cas--) {
int n, m;
cin >> n >> m;
vector<double> w(n);
double W = 0;
for (int i = 0; i < n; ++i) cin >> w[i], W += w[i];
for (auto& x : w) x *= (W + m) / W;
out(w);
}
return 0;
}
这程序好像有点Bug,我给组数据试试?
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 3752kb
input:
3 1 1 2 2 2 1 3 3 2 1 1 1
output:
3.0000000000 1.5000000000 4.5000000000 1.6666666667 1.6666666667 1.6666666667
result:
ok 6 numbers
Test #2:
score: 0
Accepted
time: 0ms
memory: 3976kb
input:
10 10 5 6 9 4 4 4 7 6 2 8 7 10 3 9 4 10 4 2 8 8 6 4 7 10 2 2 5 9 4 9 4 2 7 5 9 10 5 9 1 2 1 10 10 7 9 7 1 10 6 8 3 1 10 5 3 1 6 3 10 10 10 5 9 1 7 10 7 6 6 4 4 10 6 1 7 9 5 1 1 6 3 6 5 10 7 5 6 9 1 9 7 1 1 4 5 10 3 4 10 3 3 10 9 3 6 9 10 10 6 5 5 1 2 4 6 8 1 8 2
output:
6.5263157895 9.7894736842 4.3508771930 4.3508771930 4.3508771930 7.6140350877 6.5263157895 2.1754385965 8.7017543860 7.6140350877 9.4354838710 4.1935483871 10.4838709677 4.1935483871 2.0967741935 8.3870967742 8.3870967742 6.2903225806 4.1935483871 7.3387096774 2.0714285714 5.1785714286 9.3214285714 ...
result:
ok 100 numbers
Test #3:
score: 0
Accepted
time: 0ms
memory: 3808kb
input:
10 10 2 18 23 74 43 31 61 59 9 82 39 10 6 82 44 26 99 29 100 24 45 14 8 10 3 10 76 15 14 73 94 48 83 84 20 10 1 35 20 48 6 17 75 57 78 76 39 10 9 13 92 32 23 32 93 13 38 34 64 10 9 45 41 26 90 96 9 20 37 93 14 10 9 81 3 56 89 58 30 21 2 93 28 10 4 69 4 11 77 81 24 19 70 4 85 10 8 5 39 89 36 82 37 12...
output:
18.0820045558 23.1047835991 74.3371298405 43.1958997722 31.1412300683 61.2779043280 59.2687927107 9.0410022779 82.3735763098 39.1776765376 83.0445859873 44.5605095541 26.3312101911 100.2611464968 29.3694267516 101.2738853503 24.3057324841 45.5732484076 14.1783439490 8.1019108280 10.0580270793 76.441...
result:
ok 100 numbers
Test #4:
score: 0
Accepted
time: 1ms
memory: 3812kb
input:
10 100 28 54 29 35 99 52 7 52 91 49 4 71 33 22 90 11 73 28 13 43 64 26 47 53 56 32 76 40 80 90 84 18 90 24 96 81 66 82 21 75 58 46 52 45 38 36 82 66 33 4 54 2 57 43 9 64 43 72 10 1 31 80 89 49 100 35 61 44 45 51 51 39 80 80 11 31 95 65 59 81 43 81 2 46 60 90 65 83 55 52 93 80 66 61 29 23 99 2 64 22 ...
output:
54.2882195959 29.1547845978 35.1868089973 99.5284025925 52.2775447960 7.0373617995 52.2775447960 91.4857033931 49.2615325963 4.0213495997 71.3789553946 33.1761341975 22.1174227983 90.4803659931 11.0587113992 73.3896301944 28.1494471979 13.0693861990 43.2295081967 64.3415935951 26.1387723980 47.25085...
result:
ok 1000 numbers
Test #5:
score: 0
Accepted
time: 329ms
memory: 4600kb
input:
1005 89 48 24 95 46 14 50 35 66 24 31 84 66 39 16 80 14 78 49 46 8 19 2 33 97 37 40 85 13 19 51 58 24 87 87 69 77 62 65 5 10 5 15 75 12 32 35 24 13 90 64 89 71 22 94 31 70 93 38 89 56 26 78 56 74 32 28 52 35 61 87 17 1 54 2 88 62 34 74 27 47 18 12 57 88 39 37 76 36 24 31 89 70 71 4 27 56 36 65 33 6 ...
output:
24.2758620690 96.0919540230 46.5287356322 14.1609195402 50.5747126437 35.4022988506 66.7586206897 24.2758620690 31.3563218391 84.9655172414 66.7586206897 39.4482758621 16.1839080460 80.9195402299 14.1609195402 78.8965517241 49.5632183908 46.5287356322 8.0919540230 19.2183908046 2.0229885057 33.37931...
result:
ok 589000 numbers
Extra Test:
score: 0
Extra Test Passed