新人求助一道题!过桥问题。。。。。
2440: 过桥问题Time Limit: 1 Sec Memory Limit: 64 MB
Submit: 1690 Solved: 398
Description
在漆黑的夜里,n位旅行者来到了一座狭窄而且没有护栏的桥边。如果不借助手电筒的话,大家是无论如何也不敢过桥去的。不幸的是,他们一共只带了一只手电筒,而桥窄得只够让两个人同时过。如果各自单独过桥的话,每人所需要的时间分别是a1、a2、...an分钟;而如果两人同时过桥,所需要的时间就是走得比较慢的那个人单独行动时所需的时间。问题是,如何设计一个方案,让这些人尽快过桥。
Input
输入分2行第一行是一个整数n(1<=n<=1000) 第二行是n个整数,分别表示这n个人单独过桥需要的时间
Output
输出一行,他们过桥需要的总时间
Sample Input
5
1 3 6 8 12
Sample Output
29
HINT
Source
yhr
我的代码
#include<stdio.h>
int main()
{
int t,m,i,j,n,a[1000],temp;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<n-1;i++)//mao pao
{
for(j=i+1;j<n;j++)
{
if(a[i]>a[j])
{temp=a[i];a[i]=a[j];a[j]=temp;}
}
}
m=n;
t=0;
while(n!=1)
{
t=t+a[1];
n=n-2;//yu liang
if(n!=0)
{t=t+a[0];n++;}
else
{break;}
t=t+a[m-1];
m=m-2;
n=n-2;
if(n!=0)
{t=t+a[1];n++;}
else
{break;}
}
if(n==1){printf("%d\n",a[0]);}
else
{printf("%d\n",t);}
return 0;
}
运行数据没错,但提交总是WRONG ANSWER
求各位帮忙看下哪里有错,我找了很久都没找到