您的位置:首页 > 其它

uva10167 (简单题)

2015-12-13 14:35 239 查看
切蛋糕,大概就是输入N,表示有2N个樱桃,然后下面2N行为这2N个樱桃的坐标,然后你要把蛋糕切成两份,保证这两份拥有同等数量的樱桃。下面是代码,枚举横纵坐标,题目给定的范围是-500~500,后来发现其实枚举蛋糕也就-100~100,所以枚举-100~100其实就可以了。

#include <stdio.h>

int x[100001], y[100001];

int main() {

int n;

while (scanf_s("%d", &n) && n != 0) {

int i, j, k;

int num;

for (i = 0; i < 2 * n; i++) {

scanf_s("%d%d", &x[i], &y[i]);

}

int flag = 1;

for (i = -500; i <= 500; i++) {

for (j = -500; j <= 500; j++) {

num = 0;

if (i == 0 && j == 0)

continue;

for (k = 0; k < 2 * n; k++) {

if (i*x[k] + j*y[k] > 0)

num++;

else if (i*x[k] + j*y[k] == 0) {

break;

}

}

if (k == 2 * n && num == n){

flag = 0;

break;

}

}

if (flag == 0)

break;

}

printf("%d %d\n", i, j);

}

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: