UvaOJ 10167 Birthday Cake

来源:互联网 发布:sql平均值函数 编辑:程序博客网 时间:2024/06/06 04:43

直接枚举法


RE了几次,原因是用了goto语句,也许Uva不支持goto?

对所有可行解只输出一个即可。。。Uva评测还挺高级的。


#include <stdio.h>#define N 110int gcd(int a, int b) {int r;if (a < b)r = a, a = b, b = r;r = a % b;while(r)a = b, b = r, r = a % b;return b;}int main() {int x[N], y[N], n, i, j, k;while (scanf("%d", &n) != EOF && n) {for (i=0 ; i<n<<1 ; i++)scanf("%d%d", x+i, y+i);for (i=-500 ; i<=500 ; i++)for (j=-500 ; j<=500 ; j++)if (gcd(i, j) == 1) {int cnt = 0;for (k=0 ; k<n<<1 ; k++)if (i*x[k] + j*y[k] == 0) {cnt = 0;break;}else if (i*x[k] + j*y[k] > 0)cnt++;if (cnt == n) {printf("%d %d\n", i, j);i = 501;break;}}}}


0 0
原创粉丝点击