看不懂,m有什么用

P1011 [NOIP1998 提高组] 车站

而且,为什么样例的答案是13?? 第一站上车5人,车上有5人, 第二站上车5人,下车5人,车上有5人 第三站上车5+5=10人,下车5人,车上10人 第四站上车5+10=15人,下车10人,车上15人 那为什么答案是13
by AFOier @ 2016-10-02 21:29:04


你怎么知道第二站上了五个人?
by luaddict @ 2016-10-04 15:45:57


它只说上下车人数相等 从第三站开始才是按照规律来
by luaddict @ 2016-10-04 15:46:41


```cpp #include<iostream> using namespace std; int s[101],t[101]; int main() { int a,b,c,i,j,k,n,m,x,sb; cin>>a>>n>>m>>x; s[3]=1; s[4]=1; t[4]=1; t[5]=2; for(i=5;i<=n-1;i++) s[i]=s[i-1]+s[i-2]; for(i=4;i<=n-1;i++) t[i]=t[i-1]+t[i-2]+1; k=m-(s[n-1]+1)*a; sb=k/(t[n-1]); cout<<(s[x]+1)*a+(t[x])*sb; } ```
by luaddict @ 2016-10-04 15:50:42


那还不是相当于第二站不加不减吗?
by coldskin233 @ 2017-03-23 12:06:39


m是用来求第二站上车人数的。
by AdzearDisjudge @ 2017-04-29 14:49:06


已知第一站上了a个人 假设第二站上了b个人; 若每站都全部下车; 可以列一个数列, 数列的通项公式是可以推出来的; 根据后面推出来的一个等式: xa+yb=m; x,y 都是可以推出来的系数; 一元一次方程,解出b; x站开车时的人数就是当x站全部下车的人数; 再有x+1站的系数与a,b相乘; 得答案!
by liu2001 @ 2017-07-27 11:02:57


@[lushangyin](/space/show?uid=24805) 谢谢大佬!!!
by 青珹 @ 2018-03-14 18:43:01


|