大佬们帮忙看一下,为什么只有50分啊?
by zzzcdq @ 2022-02-27 07:35:40
~~其实可以直接打表~~
```cpp
#include <iostream>
using namespace std;
int a, n, x, m;
int sum1[] = { 0,1,1,2,2,3,4,6,9,14,22,35,56,90,145,234,378,611,988,1598,2585 };
//上车
int sum2[] = { 0,0,0,0,1,2,4,7,12,20,33,54,88,143,232,376,609,986,1596,2583,4180,6764 };
//下车
int main(void)
{
ios::sync_with_stdio(0);
cin >> a >> n >> m >> x;
if (n == x)
{
cout << '0';
return 0;
}//特判*1
m = m - a * sum1[n - 1];
//cout << m << endl;
if (sum2[n - 1] == 0 and m == 0)
{
cout << a * sum1[n - 1];
return 0;
}//特判*2
m = m / sum2[n - 1];
//cout << m << endl;
cout << m * sum2[x] + a * sum1[x];
return 0;
}
```
by DESTRUCTION_3_2_1 @ 2022-02-27 08:17:18
```cpp
站数 1 2 3 4 5 6 7 8 9
上车人数 a n a+n a+2n 2a+3n 3a+5n 5a+8n 8a+13n 13a+21n
下车人数 n n a+n a+2n 2a+3n 3a+5n 5a+8n 8a+13n
实际人数 a a 2a 2a+n 3a+2n 4a+4n 6a+7n 9a+12n 14a+20n
```
by DESTRUCTION_3_2_1 @ 2022-02-27 08:18:55
谢谢大佬拔刀相助!
by zzzcdq @ 2022-02-27 08:20:29
@[Dyc大大吖](/user/537520)
by zzzcdq @ 2022-02-27 08:23:19