好久都没写博客了,前几天做得(合并国家问题)比较简单,是我自己想的哦~发现独立分析题目很重要啊~最重要是要相信自己行!
这题其实就是大国吞并小国的问题:
思路:
#include<stdio.h>
int
main()
{
int n,a[100],i,j,m,max,sum;
while(
scanf(
"%d",&n)!=EOF)
{
max=0;
for(i=1;i<=n;i++)
{
scanf(
"%d",&a[i]);
if(a[i]>max)
max=a[i];
}
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(a[i]<a[j])
{
m=a[i]; a[i]=a[j]; a[j]=m; //排序;
}
for(i=1;i<=n;i++)
{
sum=a[i];
for(j=1;j<=n;j++)
{
if(i!=j&&sum>a[j])
{
sum=sum+a[j];
}
}
if(sum>=max)
break;
}
printf(
"%d\n",n+1-i);
}
}