intmain() { int n, m; // n 为题目的数量,m 为加密后的数字 int a[25], b[25], c[25] = {1}; // a[i] 为第 i 道题的选项数量 scanf("%d %d", &n, &m); for (int i = 1; i <= n; i++) { scanf("%d", &(a[i])); c[i] = c[i - 1] * a[i]; }
for (int i = n; i > 0; i--) { b[i] = m / c[i - 1]; m %= c[i - 1]; }
for (int i = 1; i <= n; i++) printf("%d ", b[i]); }
if (cost[n][exc] == 0 && n > 0) if (exc >= a[n]) cost[n][exc] = max(drop(a, n - 1, exc), drop(a, n - 1, exc - a[n]) + a[n]); else cost[n][exc] = drop(a, n - 1, exc); return cost[n][exc]; }
intmain() { int n, x; // n 为挑选的书的数量,x为包邮最低价 int a[35]; // a[i] 为第 i 本书的价格 int sum = 0; // 用于记录书的总价 scanf("%d %d", &n, &x); for (int i = 1; i <= n; i++) { scanf("%d", &a[i]); sum += a[i]; } int excessive = sum - x; printf("%d", sum - drop(a, n, excessive)); }
intmain() { int n; int ri, mi, pij; int d, u, r; scanf("%d", &n);
for (int i = 0; i < n; i++) {
for (set<pair<int, int>>::iterator iter = affect_region.begin(); iter != affect_region.end();) { const pair<int, int> &r = *iter; if (i >= r.second + 7) iter = affect_region.erase(iter); else iter++; }
scanf("%d %d", &ri, &mi); for (int j = 0; j < ri; j++) { scanf("%d", &pij); for (int k = 0; k < 7; k++) // 输入风险地区信息 affect_region.insert({pij, i + k}); }