YTUoj 3884: Python 实验03-4 计算糖果总数

追风赶月莫停留,平芜尽处是春山

  题目:按照如下方式从中取糖果: 1 1 1 1 1 1 个地取,正好取完。 2 2 2 2 2 2 个地取,还剩 1 1 1 个。 3 3 3 3 3 3 个地取,正好取完。 4 4 4 4 4 4 个地取,还剩 1 1 1 个。 5 5 5 5 5 5 个地取,还差 1 1 1 个。 6 6 6 6 6 6 个地取,还剩 3 3 3 个。 7 7 7 7 7 7 个地取,正好取完。 8 8 8 8 8 8 个地取,还剩 1 1 1 个。 9 9 9 9 9 9 个地取,正好取完。请问:这个盒子里一共有多少个糖果?
分析:
1->是个整数
2->是个奇数
3->3的倍数
4->该数除以4余1
5->除以5余4
6->除以6余3
7->7的倍数
8->除以8余1
9->9的倍数
该数至少大于等于9
根据 是7、9的倍数 和 是个奇数判断,可以判断该数从以下数列中选取63、189······

用C++写一下

#include<iostream> 
#include<cstdio>
using namespace std;
int main(){
	
	int i;
	for(i=63;;i+=126){
		if(i%4==1&&(i+1)%5==0&&i%6==3&&i%8==1){
			printf("%d",i);
			break;
		}
	}
	return 0;
}
//answer:1449

用Python写一下,似乎比C++简单

#写的时候才知道python中的并与或是and、or
num = 63
while num > 0:  
    if num % 4 == 1 and (num+1) % 5 == 0 and num % 6 == 3 and num % 8 == 1:  
        print(num)  
        break  
    else:  
        num = num+126

最终用 P y t h o n Python Python输出答案 1449 1449 1449.

print("There are {} candies in this box.".format(1449))
print(f"There are {1449} candies in this box.")
print("There are %s candies in this box." % 1449)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值