赞
踩
前言:好久没写博客了,来水好好写一篇
注:本篇文章为py,不是c++
输出7和7的倍数,还有包含7的数字例如(17,27,37…70,71,72,73…)。当然,这些数是无限的,所以我们加上一个上限N。即输出不大于N的敲七数。
第1行:1个整数N。(N不大于30000)
若干行,每行一个敲七数。按从小到大的顺序排列。
20
7
14
17
一个数一个数的排查
n=int(input())
for i in range(7,n+1):
if i % 7 == 0 :
print(i)
else:
j = i
while j <= n:
if j % 10 == 7:
print(i)
break
j = j // 10;
if j == 0:
break
相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三个人一排,五人一排,七人一排地变换队形,而他每次只掠一眼队伍的队尾就知道总人数了。输入3个非负整数a,b,c,表示每种队尾的人数(a<3,b<5,c<7),输出总人数的最小值(或报告无解)。已知总人数不小于10,不超过100。
//请有基础的同学写中国剩余定理
2 1 6
41
2 1 3
no answer
因为人数再100以内,所以工程量很小,从1枚举到100便可
a,b,c=map(int,input().split())
for i in range(1,101):
if(i%3==a and i%5==b and i%7==c):
print(i)
sys.exit()
print("no answer")
若某个自然数的所有小于自身的因数之和恰好等于其自身,则该自然数称为一个完全数。试编程找出m~n间的完全数。
二个整数m、n。(1≤m,n≤20000)
每行一个完全数,最后一个数为完全数的个数
1 10
6
1
这道题要注意一点,因为工程量很大,所以暴力有可能超时,所以要找到完全数末尾为6/8的特点(性质)
n,m=map(int,input().split())
w=0
for i in range(n,m+1):
s=0
for j in range(1,i//2+1):
#print(j)
if i%10==8 or i%10==6 :#判断末尾为6/8
if i%j==0 :
s+=j
if s>i:
break
if s==i:
print(i)
w+=1
print(w)
鸡兔关在同一笼中,读入总脚数及头数,编程输出鸡兔各有多少只。
共一行,二个数N和M,分别表示脚数及头数
共一行,两个整数,鸡兔各多少只,两数之间用一空格分开
40 16
12 4
b, a = map(int, input().split(' '))
for i in range(1, a):
x = i
y = a - x
if 2 * x + 4 * y == b:
print("{} {}".format(x, y))
break
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。