Serendipity丶


私信TA

用户名:uq_38590416266

访问量:2435

签 名:

别人的屋檐再大,不如自己手中有伞

等  级
排  名 64
经  验 10628
参赛次数 0
文章发表 33
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

唯有提高自己的核心竞争能力,才可在逆流中不断前进。

解题思路:先将例题的列出来找规律,就一个数列,主要就是通过循环求第二站的上下车人数

注意事项:数组大小和sum为第一站和后面站上的人数和

参考代码:

#include<bits/stdc++.h>

using namespace std;

int main()

{

int a[100],b[100],c[100];//数组a上车人数,b下车人数,c这一占上车总人数 

int m,n,l,k,x;

cin>>m>>n>>l>>k;

a[0]=m;

for(x=1;;x++)//x为第二站的上下车人数  

{

a[1]=x;//定义第二站人数为x 

int sum=m;//sum为最后下车人数,先加上第一站的后面加上上车总人数C[]就行 

for(int i=2;i<n-1;i++)

{

a[i]=a[i-1]+a[i-2];//上 

b[i]=a[i-1];//下 

c[i]=a[i]-b[i];//总 

}

for(int j=2;j<n-1;j++)

sum=sum+c[j];//这为到最后一战总人数 

if(sum==l)//如果等于 结束循环 求出x 然后就很简单了 

break;

}

int sum=m;//sum=第一站的加后面上的总人数 

for(int j=2;j<k;j++){

sum=sum+c[j];

}

printf("%d",sum);

return 0;

}


 

0.0分

2 人评分

  评论区

  • «
  • »