diff --git "a/2024/Python/2024\350\275\254\350\256\241\347\256\227\346\234\272\345\255\246\351\231\242\346\234\272\350\200\203\350\257\225\351\242\230\357\274\210\345\233\236\345\277\206\347\211\210\357\274\211\342\200\224\342\200\224Python.md" "b/2024/Python/2024\350\275\254\350\256\241\347\256\227\346\234\272\345\255\246\351\231\242\346\234\272\350\200\203\350\257\225\351\242\230\357\274\210\345\233\236\345\277\206\347\211\210\357\274\211\342\200\224\342\200\224Python.md" index 662adae..e139213 100644 --- "a/2024/Python/2024\350\275\254\350\256\241\347\256\227\346\234\272\345\255\246\351\231\242\346\234\272\350\200\203\350\257\225\351\242\230\357\274\210\345\233\236\345\277\206\347\211\210\357\274\211\342\200\224\342\200\224Python.md" +++ "b/2024/Python/2024\350\275\254\350\256\241\347\256\227\346\234\272\345\255\246\351\231\242\346\234\272\350\200\203\350\257\225\351\242\230\357\274\210\345\233\236\345\277\206\347\211\210\357\274\211\342\200\224\342\200\224Python.md" @@ -271,7 +271,7 @@ for n in range(2,10000): continue elif stop == 0: for step in range(2,10000): #枚举等差,逐个尝试 - if loop_check(n,step,8): + if loop_check(n,step,9): print(step) stop = 1 #设置为停止 break @@ -287,4 +287,4 @@ for n in range(2,10000): ​ 想起翁恺老师的话:学计算机,一定要有一个非常强大的心理状态,计算机的所有东西都是人做出来的,别人想得出来,我也一定想得出来。在计算机里头没有任何黑魔法。所有东西只不过是我现在不知道而已。总有一天,我会把所有的细节,所有的内部的东西全都搞明白的。 -​ 我觉得,不管你是有没有转入成功,只要你是热爱计算机科学的,只要你愿意在这条路上坚持下去,开拓眼界,与时俱进,你一定能够在计算机领域,创造属于你的价值的!!! \ No newline at end of file +​ 我觉得,不管你是有没有转入成功,只要你是热爱计算机科学的,只要你愿意在这条路上坚持下去,开拓眼界,与时俱进,你一定能够在计算机领域,创造属于你的价值的!!! diff --git a/2025/Python/1.py b/2025/Python/1.py new file mode 100644 index 0000000..4774db3 --- /dev/null +++ b/2025/Python/1.py @@ -0,0 +1,23 @@ +def isprime(x):# 素数筛 + if x < 2: + return False + for i in range(2, int(x ** 0.5) + 1): + if x % i == 0: + return False + return True + +def check(y): + a = y % 10 + b = y // 10 % 10 + c = y // 100 % 10 + return (a + b) % 10 == c + +m,n = map(int, input().split()) +cnt = 0 # 计数器 实现每五个输出一个换行 +for i in range(n, m-1,-1): # 反向遍历实现输出从小到大 + if isprime(i) and check(i): + cnt += 1 + if cnt % 5 == 0: + print(i) + else: + print(i, end=' ') diff --git a/2025/Python/2.py b/2025/Python/2.py new file mode 100644 index 0000000..4f62e25 --- /dev/null +++ b/2025/Python/2.py @@ -0,0 +1,15 @@ +# 明文加密(移位) +s = input() +l = int(input()) + +# 先根据长度分组 +s = [s[i:i+l] for i in range(0, len(s), l)] + +# 进行移位操作 + +for i in range(len(s)): + d = i % len(s[i]) # 取余实现移位,防止爆索引。 如果没想到可以采取暴力拓宽字符串的方法。 + s[i] = s[i][-d:] + s[i][:-d] if d != 0 else s[i] + +print(''.join(s)) + diff --git a/2025/Python/3.py b/2025/Python/3.py new file mode 100644 index 0000000..c7bac8e --- /dev/null +++ b/2025/Python/3.py @@ -0,0 +1,6 @@ +# 使用datetime库 +import datetime +start = datetime.date(1921,7,23) +end = datetime.date(2020,7,1) +gap = end - start +print(gap.days*24*60) diff --git a/2025/Python/4.py b/2025/Python/4.py new file mode 100644 index 0000000..84c0d24 --- /dev/null +++ b/2025/Python/4.py @@ -0,0 +1,23 @@ +# 用了贪心,可能有问题,望补充指正 + +fibs = [1,1] +while fibs[-1] < 1000000000:# 先对数列打表 + fibs.append(fibs[-1] + fibs[-2]) + +t = int(input()) +nums = [int(input()) for _ in range(t)] +ans = [] +for num in nums: + res = [] + remain = num + for fib in fibs[::-1]: + if fib <= remain: + res.append(fib) + remain -= fib + if remain == 0: + break + ans.append(res) + +for i in range(len(ans)): + print(nums[i], end='=') + print('+'.join(map(str, ans[i]))) diff --git a/2025/Python/5.py b/2025/Python/5.py new file mode 100644 index 0000000..7aea039 --- /dev/null +++ b/2025/Python/5.py @@ -0,0 +1,30 @@ +def iswave(x): + s = str(x) + if len(s) < 3: + return False + l,r = s[0],s[1] + for i in range(len(s)): + c = l if i % 2 == 0 else r + if c != s[i]: + return False + return True + +def change(num,r): + s = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ' + res = '' + while num > 0: + res = s[num % r] + res + num //= r + if res: + return res + return '0' + +r1,r2,n1,n2,k = map(int, input().split()) +for i in range(n1,n2+1): + cnt = 0 + for j in range(r1,r2+1): + if iswave(change(i,j)): + cnt += 1 + if cnt >= k: + print(i, end=' ') +