USACO 3.2 Feed Ratios(水)

枚举,写的代码搓。

 1 /*
 2     ID: cuizhe
 3     LANG: C++
 4     TASK: ratios
 5  */
 6 #include <cstdio>
 7 #include <cstring>
 8 #include <string>
 9 #include <math.h>
10 #include <queue>
11 using namespace std;
12 #define N 100000000
13 int p[5][5];
14 int main()
15 {
16     int i,j,k,a,b,c,d,ans;
17     freopen("ratios.in","r",stdin);
18     freopen("ratios.out","w",stdout);
19     for(i = 1; i <= 4; i ++)
20     {
21         for(j = 1; j <= 3; j ++)
22             scanf("%d",&p[i][j]);
23     }
24     ans = N;
25     for(i = 0; i <= 100; i ++)
26     {
27         for(j = 0; j <= 100; j ++)
28         {
29             for(k = 0; k <= 100; k ++)
30             {
31                 if((i*p[2][1]+j*p[3][1]+k*p[4][1])%p[1][1] == 0)
32                 {
33                     if(i == 0&&j == 0&&k == 0) continue;
34                     int t = (i*p[2][1]+j*p[3][1]+k*p[4][1])/p[1][1];
35                     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])
36                     {
37                         if(ans > i+j+k+t)
38                         {
39                             ans = i+j+k+t;
40                             a = i;
41                             b = j;
42                             c = k;
43                             d = t;
44                         }
45                     }
46                 }
47             }
48         }
49     }
50     if(ans == N)
51         printf("NONE\n");
52     else
53         printf("%d %d %d %d\n",a,b,c,d);
54     return 0;
55 }
posted @ 2012-11-21 20:56  Naix_x  阅读(182)  评论(0编辑  收藏  举报