# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
955599 | 2024-03-31T05:30:09 Z | Trisanu_Das | 비스킷 담기 (IOI20_biscuits) | C++17 | 0 ms | 0 KB |
#include <bits/stdc++.h> #include "biscuits.h" using namespace std; long long count_tastiness(long long x, vector<long long> a) { vector<long long> D(62, 1); a.resize(62); for (int i = 1; i < 62; i++) { a[i] = (a[i] << i) + a[i - 1]; ll n = (1e18); for (int j = i - 1; j > -1; j--) { n = min(n, a[j]); if (x <= (n >> j)) D[i] += D[j], n -= (x << j); } } return D.back(); }