题目
crypto2
由[ ]和!等等组成的密码为JSfuck密码那直接去找到相应的编译器破解就可以
crypto4
要求的是输出d而且给出了p和q这是简单的rsa格式直接去看代码
import gmpy2
p = 447685307
q = 2037
e = 17
phi = (p-1)*(q-1)
d = gmpy2.invert(e,phi)
print(d)
输出结果是
代入flag就可以
crypto5
格式与4一样也是简单的rsa运算直接看代码
import gmpy2
p = 447685307
q = 2037
e = 17
c = 704796792
phi = (p-1)*(q-1)
d = gmpy2.invert(e, phi)
m = gmpy2.powmod(c, d, p*q)
print(m)
python的练习
题目要求去输出个数所以是要计数的又需要判断所以要俩个循环去完成
n=input().split()
n1=int(n[0])
n2=int(n[1])
s2=0
for a in range(n1,n2+1,1):
s1=0
for i in range(1,a,1):
if a%i==0:
s1+=i
if s1==a:
s2+=1
else:
s2+=0
print(s2)
就像这样内循环去找到目标的因数并判断,外循环负责计数
2
这个更像是一个数学的归纳题当牌为偶数时就会发现赢的一定是小明但会有例外比如9
考虑到抽牌的数量是2的次方所以要考虑第一次双方拿完还剩下偶数牌的情况即去除最后一张还是偶数的情况代码为
n = int(input())
while True:
if n%2 == 0 or n ==1:
print('ming')
break
else:
i = n//2
if i%2 == 0:
print('ming')
break
else:
print('hua')
break