您的位置:首页 > Web前端

USACO 3.2 Feed Ratios(水)

2012-11-21 20:56 357 查看
枚举,写的代码搓。

/*
ID: cuizhe
LANG: C++
TASK: ratios
*/
#include <cstdio>
#include <cstring>
#include <string>
#include <math.h>
#include <queue>
using namespace std;
#define N 100000000
int p[5][5];
int main()
{
int i,j,k,a,b,c,d,ans;
freopen("ratios.in","r",stdin);
freopen("ratios.out","w",stdout);
for(i = 1; i <= 4; i ++)
{
for(j = 1; j <= 3; j ++)
scanf("%d",&p[i][j]);
}
ans = N;
for(i = 0; i <= 100; i ++)
{
for(j = 0; j <= 100; j ++)
{
for(k = 0; k <= 100; k ++)
{
if((i*p[2][1]+j*p[3][1]+k*p[4][1])%p[1][1] == 0)
{
if(i == 0&&j == 0&&k == 0) continue;
int t = (i*p[2][1]+j*p[3][1]+k*p[4][1])/p[1][1];
if(i*p[2][2]+j*p[3][2]+k*p[4][2]==t*p[1][2]&&i*p[2][3]+j*p[3][3]+k*p[4][3]==t*p[1][3])
{
if(ans > i+j+k+t)
{
ans = i+j+k+t;
a = i;
b = j;
c = k;
d = t;
}
}
}
}
}
}
if(ans == N)
printf("NONE\n");
else
printf("%d %d %d %d\n",a,b,c,d);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: