if (x >= n) { for (int i = 0; i <= n - 1; i++) cout << i << " "; cout << endl; return; } else { for (int i = 0; i < x; i++) cout << i << " "; for (int i = x + 1; i < n; i++) cout << i << " "; cout << x << endl; } }
voidsolve(){ res = 1e18; int maxx = 0, minn = 1e18; cin >> n >> k; for (int i = 1; i <= n; i++) cin >> a[i], maxx = max(maxx, a[i]), minn = min(minn, a[i]); for (int i = 1; i <= n; i++) cin >> b[i];
for (int i = 1; i <= n; i++) if (a[i] != -1 && b[i] != -1) { if (res != 1e18 && res != a[i] + b[i]) { cout << 0 << endl; return; } res = a[i] + b[i]; }
if (res == 1e18) { cout << (k - maxx + minn + 1) << endl; return; }
for (int i = 1; i <= n; i++) { if (a[i] > res) { cout << 0 << endl; return; } if (b[i] == -1) { if (res - a[i] > k) { cout << 0 << endl; return; } } }
给你 n 朵花,第 i 朵花的魅力程度是 ai 你现在要收集 m 朵花,你从 a1 走到 an,在收集的花中,第 i 朵花的魅力程度至少是 bi 你可能收集不到 m 朵,所以你现在有一个魔法,在开始手机之前,你可以选取任意整数 k,在任意地方种出一朵魅力程度为 k 的新花(你至多只能施展一次魔法) 你现在需要确定这样一个最小整数 k(如果操作后能摘到 m 朵花)