WY71. 买房
描述
在一条街上有n幢房子,标号从1到n,两个在标号上相差为1的房子视为相邻,这些房子中有k幢房子已有住户。输入描述
输入的一行为测试用例数t(1 <= t <= 200000),输出描述
对于每个用例输出最小的可能数以及最大的可能数示例1
输入:
6 1 0 1 1 2 0 2 1 2 2 6 4
输出:
0 0 0 0 0 0 0 0 0 0 0 2
C 解法, 执行用时: 36ms, 内存消耗: 1704KB, 提交时间: 2021-10-07
#include <stdio.h> int main() { int t, n, k; scanf("%d", &t); int i, max; for(i = 0; i < t; i++) { scanf("%d %d", &n, &k); if(n + 1 >= 2*k) max = k-1; else max = n-k; max < 0 ? max = 0:max; printf("0 %d\n", max); } return 0; }
C 解法, 执行用时: 40ms, 内存消耗: 1824KB, 提交时间: 2021-09-15
#include <stdio.h> int main() { int m=0; scanf("%d",&m); for(int i=0;i<m;i++) { int min = 0; int max = 0; int n,k=0; scanf("%d %d",&n,&k); if(k == 0) { max = 0; } else if(2*k<=n) { max = k-1; } else { max = n-k; } printf("%d %d\n",min,max); } }