NUAA ACM OJ源码

源代码在线查看: pku 3404 贪心的方法选择.txt

软件大小: 152 K
上传用户: AhQ
关键词: NUAA ACM 源码
下载地址: 免注册下载 普通下载 VIP

相关代码

				#include 
				#include 
				#include 
				#include 
				#include 
				#include 
				using namespace std;
				
				//PKU 3404 贪心的方法选择
				#define NMAX 55
				#define INFI 99999
				#define MH make_heap
				#define OH pop_heap
				#define PH push_heap
				#define PB push_back
				#define OB pop_back
				
				bool cmp(int a,int b)
				{
					return a				}
				
				int ti[NMAX];
				
				void solve(int num)
				{
					int ans=0,f1,f2,s1,s2,knum=num;//最快,次快,最慢,次慢
					sort(ti+1,ti+1+num,cmp);
					f1=1;f2=2;s1=num;s2=num-1;
					while(knum>=4)
					{	//每次借助快的人,让最满、次满过,有两种方法
						if(ti[f1]*2+ti[s1]+ti[s2]							ans+=ti[f1]*2+ti[s1]+ti[s2];
						else ans+=ti[f1]+ti[f2]*2+ti[s1];//最快跟次快一起过+最快回+最慢跟次慢一起过+次快回更好
						knum-=2;
						s1-=2;s2-=2;
				//		printf("ans=%d\n",ans);
					}
					if(knum==3) ans+=ti[1]+ti[2]+ti[3];
				    else if(knum==2) ans+=ti[2];
					else if(knum==1) ans+=ti[1];
					printf("%d\n",ans);	
				}
				
				int main()
				{	int i,num;
					scanf("%d\n",&num);
					for(i=1;i					solve(num);
					return 0;
				}
							

相关资源