QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#179824#5674. Sum of RemaindersYshanqianWA 0ms3676kbC++141.4kb2023-09-15 10:30:302023-09-15 10:30:31

Judging History

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

  • [2023-09-15 10:30:31]
  • 评测
  • 测评结果:WA
  • 用时:0ms
  • 内存:3676kb
  • [2023-09-15 10:30:30]
  • 提交

answer

#include <bits/stdc++.h>
using namespace std;
#define pi acos(-1)
#define xx first
#define yy second
#define endl "\n"
#define lowbit(x) x & (-x)
#define int long long
#define ull unsigned long long
#define pb push_back
typedef pair<int, int> PII;
typedef pair<double, double> PDD;
#define max(a, b) (((a) > (b)) ? (a) : (b))
#define min(a, b) (((a) < (b)) ? (a) : (b))
#define Ysanqian ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
const int N = 1e6 + 10, M = 1010, inf = 0x3f3f3f3f, mod = 18446, P = 13331;
const double eps = 1e-8;
int n;
int a[N];
bool flag;
vector<int> ans;
void solve()
{
  cin >> n;
  for (int i = 1; i <= n; i++)
    cin >> a[i];

  int num = a[1];
  int cnt = a[1];
  for (int i = 2; i <= n; i++)
  {
    if (a[i] == 0)
      ans.pb(i);
    int sum = 0;
    for (auto ed : ans)
      sum += i % ed;
    a[i] -= sum;
    if (a[i] < cnt * i)
    {
      int x = a[i] / i;
      int y = cnt;
      y -= x;
      cnt -= y;
      for (int j = 1; j <= y; j++)
      {
        ans.pb(i);
        if (ans.size() == a[1])
        {
          flag = 1;
          break;
        }
      }
      if (flag)
        break;
    }
  }
  cout << a[1] << ' ';
  for (auto ed : ans)
    cout
        << ed << ' ';
}
signed main()
{
  Ysanqian;
  int T;
  T = 1;
  // cin >> T;
  while (T--)
    solve();
  return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3580kb

input:

16
4 6 10 12 6 8 12 14 18 10
3 5 9 11 5 7

output:

4 2 5 5 11 

result:

ok single line: '4 2 5 5 11 '

Test #2:

score: 0
Accepted
time: 0ms
memory: 3640kb

input:

20
3 6 6 9 12 6 2 5 5 8
11 5 8 4 4 7 10 4 7 10

output:

3 3 6 7 

result:

ok single line: '3 3 6 7 '

Test #3:

score: 0
Accepted
time: 0ms
memory: 3600kb

input:

40
7 14 21 28 35 42 42 49 56 63
70 65 59 45 37 44 51 58 65 72
72 79 86 57 39 33 40 26 33 25
32 39 46 53 53 48 55 62 56 63

output:

7 7 12 13 14 15 24 25 

result:

ok single line: '7 7 12 13 14 15 24 25 '

Test #4:

score: 0
Accepted
time: 0ms
memory: 3676kb

input:

60
7 14 21 28 35 42 49 56 63 70
77 72 79 86 93 100 90 97 85 92
99 106 113 108 115 122 102 109 116 123
99 106 113 103 110 105 112 100 107 114
121 86 93 56 63 70 77 72 79 86
76 83 90 70 77 84 72 79 86 81

output:

7 12 17 19 27 31 42 44 

result:

ok single line: '7 12 17 19 27 31 42 44 '

Test #5:

score: -100
Wrong Answer
time: 0ms
memory: 3608kb

input:

20
1 2 3 4 5 6 7 8 0 1
2 3 4 5 6 7 8 0 1 2

output:

1 9 9 18 

result:

wrong answer 1st lines differ - expected: '1 9', found: '1 9 9 18 '