数学题。
我们进行推导。
设每一层选了 \(s_i\) 个盒子,在里面放下一层的盒子。
那么我们可以得到以下式子:
\[ n-s_1+s_1\times k-s_2+s_2\times k\cdots=f \]\[ n+s_1\times (k-1)+s_2\times (k-1)\cdots=f \]\[ n+(s_1+s_2+\cdots)\times (k-1)=f \]答案显然是 \(f+s_1+s_2+\cdots+s_{cnt}\)。
由上式即 \(\frac{(f-n)}{k-1}+f\)。
#include <bits/stdc++.h>
using namespace std;
#define int long long
namespace Jelly {
int main() {
int n, k, f, t;
cin >> n >> k >> t >> f;
cout << (f - n) / (k - 1) + f << '\n';
return 0;
}
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(NULL), cout.tie(NULL);
int T = 1;
cin >> T;
while(T --) Jelly::main();
return 0;
}
标签:int,namespace,long,times,cdots,main,SP4343
From: https://www.cnblogs.com/cornulsyhj/p/17770382.html