杭电acm1008 老是wrong answer
#include<iostream>usingnamespacestd;intmain(){inti,n,a[101],sum;cin>>n;a[0]=0;while(n...
#include <iostream>
using namespace std;
int main()
{
int i,n,a[101],sum;
cin>>n;a[0]=0;
while(n!=0)
{
sum=0;
for(i=1;i<=n;i++)
{
cin>>a[i];
}
for(i=0;i<n;i++)
{
if(a[i]<a[i+1])
{
sum+=(a[i+1]-a[i])*6+5;
}
else if(a[i]>a[i+1])
{
sum+=(a[i]-a[i+1])*4+5;
}
}
cout<<sum<<endl;
cin>>n;
}
return 0;
}
在电脑上运行没有问题,可是总是通不过,哪位高手给看看~~ 展开
using namespace std;
int main()
{
int i,n,a[101],sum;
cin>>n;a[0]=0;
while(n!=0)
{
sum=0;
for(i=1;i<=n;i++)
{
cin>>a[i];
}
for(i=0;i<n;i++)
{
if(a[i]<a[i+1])
{
sum+=(a[i+1]-a[i])*6+5;
}
else if(a[i]>a[i+1])
{
sum+=(a[i]-a[i+1])*4+5;
}
}
cout<<sum<<endl;
cin>>n;
}
return 0;
}
在电脑上运行没有问题,可是总是通不过,哪位高手给看看~~ 展开
1个回答
展开全部
这个题很贱。。。有个trick,就是如果序列中相邻两个楼层相同的话,电梯还是会停留5秒。。。
#include <iostream>
using namespace std;
int main()
{
int i,n,a[101],sum;
cin>>n;a[0]=0;
while(n!=0)
{
sum=0;
for(i=1;i<=n;i++)
{
cin>>a[i];
}
for(i=0;i<n;i++)
{
if(a[i]<=a[i+1]) //这里改为小于等于就可以
{
sum+=(a[i+1]-a[i])*6+5;
}
else if(a[i]>a[i+1])
{
sum+=(a[i]-a[i+1])*4+5;
}
}
cout<<sum<<endl;
cin>>n;
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
int i,n,a[101],sum;
cin>>n;a[0]=0;
while(n!=0)
{
sum=0;
for(i=1;i<=n;i++)
{
cin>>a[i];
}
for(i=0;i<n;i++)
{
if(a[i]<=a[i+1]) //这里改为小于等于就可以
{
sum+=(a[i+1]-a[i])*6+5;
}
else if(a[i]>a[i+1])
{
sum+=(a[i]-a[i+1])*4+5;
}
}
cout<<sum<<endl;
cin>>n;
}
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询