基础算法之枚举
例2-1
题目描述 :
小明家里有很多长度不是一样的木棍,有一天他很无聊,便玩弄这些木棒来解闷,他想在这些木棒中挑出三根来组成一个直角三角形,当然他有很多种选法,所以他想挑一个面积最大的,
输入:
n(0-100)
n组数据(<=1000)
输出: 最大面积保留三位小数 不能组成则输出MyGod
源代码:
#include <stdio.h>
#define N 101
int len[N];
double GetMaxArea(int n)
{
int i,j,k;
double ans=-1;
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
for(k=j+1;k<n;k++)
{
if((len[i]*len[i]+len[j]*len[j])==(len[k]*len[k]))
{
if(len[i]*len[j]*0.5>ans)
{
ans=len[i]*len[j]*0.5;
}
}
}
return ans;
}
int main()
{
int n,i;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n;i++)
{
scanf("%d",&len[i]);
}
double ans=GetMaxArea(n);
if(ans<0)printf("My God\n");
else printf("%.3lf\n",ans);
}
return 0;
}
我想做我自己
posted on 2013-04-05 14:47 AAAAAApple 阅读(218) 评论(0) 收藏 举报
浙公网安备 33010602011771号