QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#583607#9355. Keeping RabbitssinbadAC ✓329ms4600kbC++204.0kb2024-09-22 20:49:052024-09-22 20:49:07

Judging History

你现在查看的是最新测评结果

  • [2024-09-22 20:49:07]
  • 评测
  • 测评结果:AC
  • 用时:329ms
  • 内存:4600kb
  • [2024-09-22 20:49:05]
  • 提交

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