#答案
ans=0
#判断number是否含有数字2
def judge(number):
while number!=0:
a=number%10
if a==2:
return True
number//=10
return False
for i in range(1,2021):
if judge(i):
ans+=1
print(ans)
#答案
ans=0
#判断number是否为合数
def judge(number):
for i in range(2,number):
if number%i==0:
return True
return False
for i in range(1,2021):
if judge(i):
ans+=1
print(ans)
补充一个定理:
# p[i]表示第i个数分解时一共用了多少个
p = [0 for i in range(101)]
# 对2-100每一个数字进行质因数分解
for number in range(2, 101):
# 当前要分解的数字
now_number = number
# 质因数分解
j = 1
while j <= (now_number // j):
j += 1
# 求用了多少个这个数字
while now_number % j == 0:
p[j] += 1
now_number //= j
# 最后分解完剩下一个数字
if now_number > 1:
p[now_number] += 1
# 根据公式求约数个数
ans = 1
for i in range(2, 101):
if p[i] != 0:
ans *= (p[i] + 1)
print(ans)
# 读入字符串
s = ''
# 打开文件,读入字符串
with open('E:/code/刷题/inc.txt', 'r') as f:
s = f.readline()
# 去掉结尾的换行
s = s[:-1]
# 字符串的长度
length = len(s)
# dp数组
dp = [1] * length
# 答案
ans = 0
for i in range(length):
for j in range(i):
# 如果当前字符大于以前的字符
if s[i] > s[j]:
# 把当前字符添加到前面上升字符序列的末尾
dp[i] += dp[j]
# 如果当前字符等于以前的字符
if s[i] == s[j]:
# 去掉重复的
dp[i] -= dp[j]
for i in dp:
ans += i
print(ans)
# 依次将数字1放入16个格子中
# 利用深度搜索找到可能的方案
# 题目中90度的意思是只能从当前位置
# 向上,下,左,右四个方向进行搜索
# 最终答案
ans = 0
# 方格
grid = [[0] * 4 for i in range(4)]
# 状态标记,当前位置是否已经填充数字
visit = [[False] * 4 for i in range(4)]
# 上,右,下,左四个方向
dir_x = [-1, 0, 1, 0]
dir_y = [0, 1, 0, -1]
# 深度搜索
def dfs(x, y, now_number):
global ans
"""
:param x: 当前所在的行
:param y: 当前所在的列
:param now_number: 当前填充的数字
:return:
"""
# 搜索边界,填完了16个数字就可以
# 没有进一步的要求
if now_number == 16:
ans += 1
return
# 搜索
# 向四个方向
for i in range(4):
new_x = x + dir_x[i]
new_y = y + dir_y[i]
# 如果没有越界,且当前位置没有填充数字
if 0 <= new_x <= 3 and 0 <= new_y <= 3 and (not visit[new_x][new_y]):
# 标记
visit[new_x][new_y] = True
# 进行搜索,填下一个数字
dfs(new_x, new_y, now_number + 1)
# 回退,取消标记
visit[new_x][new_y] = False
# 对格子的每一个位置进行试探
for i in range(4):
for j in range(4):
visit[i][j] = True
dfs(i, j, 1)
visit[i][j] = False
print(ans)
# 第一个甲子年是124年
# 天干-甲(jiǎ)、乙(yǐ)、丙(bǐng)、丁(dīng)、戊
# (wù)、己(jǐ)、庚(gēng)、辛(xīn)、壬(rén)、癸(guǐ)。
#
# 地支-子(zǐ)、丑(chǒu)、寅(yín)、卯(mǎo)、
# 辰(chén)、巳(sì)、午(wǔ)、未(wèi)、申(shēn)、酉(yǒu)、戌(xū)、
# 亥(hài)。
# 天干列表
tian_gan_list = ['jia', 'yi', 'bing', 'ding', 'wu', 'ji', 'geng', 'xin', 'ren', 'gui']
# 地支列表
di_zhi_list = ['zi', 'chou', 'yin', 'mao', 'chen', 'si', 'wu', 'wei', 'shen', 'you', 'xu', 'hai']
# 输入的年份
n = int(input())
# 答案
ans = ''
# 当前年份
i = 123
tian_gan_id = 0
di_zhi_id = 0
while i < n:
i += 1
# 第一年是甲子年
ans = tian_gan_list[tian_gan_id] + di_zhi_list[di_zhi_id]
# 轮回
tian_gan_id = (tian_gan_id + 1) % 10
di_zhi_id = (di_zhi_id + 1) % 12
print(ans)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)