1.鸡兔同笼(POJ3237)

一个笼子里面关了若干只鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。已经知道了笼子里面脚的总数a,则笼子里面至少有多少只动物,至多有多少只动物?

nCases代表测试组数,nFeets代表每一组一共拥有的足数, 然后分为三种情况:

  1. 能被4整除,则也能被2整除,故最少是全为兔子 /4,最多是全为鸡 /2
  2. 不能被4整除,能被2整除,则最多是只有一只鸡,其他全是兔子
  3. 奇数情况,不成立
#include<cstdio>

int main() {
	int nCases, nFeets;       //组数与足数
	while (scanf_s("%d", &nCases) != EOF) {
		for (int i = 0; i < nCases; i++) {
			scanf_s("%d", &nFeets);
			if (nFeets % 4 == 0) {
				printf("%d %d\n", nFeets / 4, nFeets / 2);
			}
			else if (nFeets % 2 == 0) {
				printf("%d %d\n", nFeets / 4 + 1, nFeets / 2);
			}
			else {
				printf("0 0\n");
			}
		}
	}
	return 0;
}

安全证书问题

使用VS会出现'scanf': This function or variable may be unsafe. Consider using scanf_s ins这种错误,这是新版vc库添加的警告因为微软认为scanf的使用存在安全隐患,因为C/C++中的字符串处理都是以\0为截止符的,如果搜索不到\0,容易出现字符串越界所有vc扩展的所谓安全标准库,都添加了一个参数用以指定字符串参数的长度,用以避免这种安全隐患。

解决方法

  1. 按照编译出错的提示 将scanf全部替换成 scanf _s 即可KO。
  2. 编译器预设 在VS中,按alt+F7 打开工程属性,然后找到图片上指向的地方,添加一行内容_CRT_SECURE_NO_DEPRECATE 就OK了 完美跳过~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值