HDU1248 1407 for循环暴力

           这两题解题思想相同,贴在这做个对照。

           都是三重for自动计算。

 

          1248寒冰王座

/*给小费最少,买东西花费最多即可*/
#include<iostream>
using namespace std;

int main()
{
	int t,n;
	int a,b,c;

	cin>>t;
	while(t--)
	{
		cin>>n;

		a=n/150;
		b=n/200;
		c=n/350;

		int max=-1;
		int tem;
		for(int i=0;i<=a;i++)   //完美的暴力
		{
			for(int j=0;j<=b;j++)
			{
				for(int k=0;k<=c;k++)
				{
					tem=150*i+200*j+350*k;
					if(max<tem && tem<=n)
						max=tem;
				}
			}
		}

		cout<<n-max<<endl;
	}
	return 0;
}


             1407测试你是否和LTC一样高

#include<iostream>
#include<cmath>
using namespace std;

int main()
{
	int a,b,c,n;

	while(cin>>n)
	{
		a=sqrt(n*1.0);   //n转换成double型
		b=a;
		c=a;

		int flag=0,flag_1=0,i,j,k;
		for(i=1;i<=a;i++)
		{
			if(flag_1==1)
				break;

			for(j=1;j<=b;j++)
			{	
				if(flag==1)
				{
					flag_1=1;
					i--;
					break;
				}

				for(k=1;k<=c;k++)
				{

					if(i*i+j*j+k*k==n)
					{
						flag=1;
						j--;
						break;
					}
				}
			}
		}
		cout<<i<<" "<<j<<" "<<k<<endl;
	}
	return 0;
}


 

 

 

 

你可能感兴趣的:(c,测试)