Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
按多机调度问题贪心做的,谁有测试数据#include<iostream> #include<cmath> #define N 40 using namespace std; int A[N],tri[3],n; int cmp(const void *x,const void *y){ return -(*(int *)x-*(int *)y); } int main(){ int i,j,k,m; double a,b,c,P; scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&A[i]); qsort(A,n,sizeof(int),cmp);//由边值从大到小排序 memset(tri,0,sizeof(tri)); j=0; for(i=0;i<n;i++){//对边值贪心 tri[j]+=A[i]; m=tri[j]; for(k=0;k<3;k++) if(tri[k]<m){ m=tri[k]; j=k; } } if((tri[0]<tri[1]+tri[2])&&(tri[1]<tri[0]+tri[2])&& (tri[2]<tri[0]+tri[1])){ a=(double)tri[0]; b=(double)tri[1]; c=(double)tri[2]; P=(a+b+c)/2; printf("%d\n",(int)(100*sqrt(P*(P-a)*(P-b)*(P-c)))); } else printf("-1\n"); system("pause"); return 0; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator