제출 #1075145

#제출 시각아이디문제언어결과실행 시간메모리
1075145allin27xPacking Biscuits (IOI20_biscuits)C++17
0 / 100
965 ms2097152 KiB
#include <bits/stdc++.h> using namespace std; #include "biscuits.h" #define int long long long long count_tastiness(long long x, std::vector<long long> a) { a.resize(a.size()+65, 0); int extra = 0; for (int i=0; i<a.size(); i++) { extra/=2; a[i] += extra; if (a[i] <= x+2) continue; if ((a[i]-x)&1) { extra = a[i] - x - 1; a[i] = x+1; } else { extra = a[i] - x; a[i] = x; } } int n = a.size(); int UB = 3*x+5; vector dp(n, vector<int> (UB, 0)); for (int i=0; i<UB; i++) dp[n-1][i] = i+1; for (int i=n-2; i>=0; i--) { for (int inc =0; inc<UB; inc++) { if (inc + a[i] < x) { dp[i][inc] = dp[i+1][(inc+a[i])/2]; } else { dp[i][inc] = dp[i+1][(inc+a[i])/2] + dp[i+1][(inc+a[i]-x)/2]; } } } return dp[0][0]; }

컴파일 시 표준 에러 (stderr) 메시지

biscuits.cpp: In function 'long long int count_tastiness(long long int, std::vector<long long int>)':
biscuits.cpp:9:17: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    9 |  for (int i=0; i<a.size(); i++) {
      |                ~^~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...