⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1.cpp

📁 我的一个acm题目的答案,希望可以和大家一起分享
💻 CPP
字号:
#include<stdio.h>
struct room
{ int bi;
int pi;
}a[500]
main()
{
	int t=2,m,f,r,c;
	printf("input t,m,f,c,r,bi,pi:");
	scanf("t=%d\n",&t);
	scanf("m=%d\n",&m);
scanf("f=%d\n",&f);
scanf("c=%d\n",&c);
scanf("r=%d\n",&r);
for(i=0;i<r;i++)
{scanf("bi=%d\n",&a[i].bi);
scanf("pi=%d\n",&a[i].pi);
}
    if(m<0||m>500)
	{	printf("error!");
scanf("m=%d\n",&m);
	}
	 if(f<0||f>500)
	{	printf("error!");
scanf("f=%d\n",&f);
	}
	  if(r<0||r>500)
	{	printf("error!");
scanf("r=%d\n",&r);
	}
	  if(c<0)
	  {
		  printf("error!");
		  scanf("c=%d\n",&c);
	  }
	   if(m<1||m>500)
	{	printf("error!");
scanf("bi=%d\n",&bi);
	}
	    if(m<1||m>1000)
	{	printf("error!");
scanf("pi=%d\n",&pi);
	}

if(c>0)
{
	if(r==1)
	{if(c==1&&m==0&&f==0)
	price=a[0].pi;
	else
		printf("impossible");
	}
	else
		if( 

}
else
{
	if(r==1)
	{	if(m+f<=a[0].bi)
	{if(m>0&&f>0)
			printf("impossible");
			if(m==0||f==0)
				price=a[0].pi;
	}
				else
					printf("impossible");
				}
				else
				{
					for(i=0;i<r;i++)
						sum+=a[i].bi;
					if(sum>=m+f)
					{	for(i=0;i<r-1;i++)
							for(j=0;j<r-i;j++)
								if(a[i].pi/a[i].bi>a[i].pi/a[i]/bi)
								{t=a[i].bi;
								s=a[i].pi;
								a[i].bi=a[j].bi;
								a[i].pi=a[j].pi;
								a[j].bi=t;
								a[j].pi=s;
								}
								sum=0;
								i=0;
								while(m+f>sum)
								sum+=a[i++].bi;
								for(j=0;j<i;j++)
									price+=a[j].pi;
					}
					else 
						printf("impossible");
				
				}
}
				
				







	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -