赞
踩
答案提交
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
解题思路
- n=0
- for i in range(1,2023+1):
- if 2023%i==0:
- n=n+1
- print(n)
答案:6
答案提交
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
算法思路
暴力枚举
- num=0
- for l in range(0,100+1):
- for r in range(0,100+1):
- if r-l >= 10:
- num=num+1
- print(num)
答案:4186
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
算法思路
打印1到1000000质数表,寻找各质数各位累加和并与23进行比较。
- pri=[]
- for i in range(401,1000000+1):
- k=0
- for j in range(2,int(i**0.5)+1):
- if i%j==0 :
- k=k+1
- if k!=0:
- break
- if k == 0:
- pri.append(i)
-
- num=0
- for i in pri:
- #i=999875
- a=int(i/10)
- b=int(i/100)
- c=int(i/1000)
- d=int(i/10000)
- e=int(i/100000)
- f=int(i/1000000)
- s=i-10*a + a-10*b + b-10*c + c-10*d + d-10*e + e-10*f
- if s==23:
- num=num+1
- print(a,b,c,d,e,f,s,num)

答案:5503
答案提交
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
算法思路
python应该不会出这种题,高精度取余()
- a=12345678901234567890123456789012345678901234567890
- print(a%2023)
答案:344
- 2 0 2 3
- 1 1 0 1
- 1 2 3 4
现在,小蓝有一个 30 行 20 列的大矩阵,如下所示,请问它的 5 行 5 列的子矩阵的和的最大值是多少?
- 9719 7515 5916 6467 7157 9614 8560 9075 2099 2838 1403 7652 6238 1699 8907 1804 5384 7942 7546 1978
- 8785 1944 8108 6040 2010 6646 2750 5410 4516 8757 5624 9257 9030 9290 6833 4646 9749 5304 5633 1573
- 8525 8244 8514 7474 7896 9731 8402 9036 1869 2688 2085 1667 7753 8466 4911 3812 8585 8319 4020 7350
- 1949 9120 4424 4057 8277 4511 6333 1533 7624 8932 1053 8682 9284 4134 1466 3607 8753 5310 3728 4163
- 9420 9185 7055 2342 4143 4499 2036 5374 7026 8638 8866 8364 1706 8767 1601 8309 5695 8179 4142 8489
- 5876 5660 4658 8307 2582 7544 8793 8207 3979 1692 1400 1893 4500 6389 7198 4836 4761 6603 2859 1312
- 6367 4174 9956 6668 6771 4795 6492 3937 7096 8041 8644 9379 8071 8667 5810 5794 8147 3823 7877 4822
- 4809 3297 8518 4972 9754 6854 3271 7891 8882 1052 3197 6035 5628 7674 7931 8085 8970 7733 4745 8785
- 7536 1511 6964 4763 5409 7032 8963 8576 3411 5853 3316 1267 7851 2735 6953 2970 1810 6830 5576 6903
- 2241 1575 2379 4679 9519 9290 4802 1562 3509 8365 6777 5143 5610 1061 7880 1935 5793 7023 5629 9571
- 2480 5937 4612 8890 1964 8532 3309 9737 8507 1849 8544 1500 9282 6288 2137 4730 4239 3473 4643 6377
- 7341 2881 3430 5815 1972 6629 3817 4547 7561 4779 6578 6114 4972 5505 7515 1800 4784 2272 4502 7541
- 7665 8607 2022 8192 2605 1346 4155 8725 8167 7022 6136 3615 6057 6329 8671 2033 3151 2249 5981 6412
- 9046 3353 8650 6965 4179 1248 5659 5219 8083 5615 3821 4436 9217 7356 3914 5717 3734 3765 4435 7210
- 8951 5013 2951 7401 2329 5686 6530 9581 6539 6881 8634 2663 2916 3019 8529 5645 8201 9270 1939 7275
- 6429 1531 6322 9586 2793 7968 4001 9665 7624 4369 6245 5146 9567 6801 6064 6199 3210 6753 2586 7795
- 5771 8507 7973 1470 1475 6896 6781 6572 8412 8557 8255 5268 8960 7251 9214 2489 6920 9917 3810 4605
- 9116 7950 3715 1697 4703 2868 8673 3106 2579 1074 3992 3547 4279 3149 3396 6081 6221 1125 9358 2471
- 8360 1526 4116 9278 6325 5175 5533 4107 7522 7599 7711 9211 1752 2431 8321 3844 3579 1047 3987 8487
- 7600 2401 8748 8945 2078 1519 4614 4576 5706 4040 9358 1928 1327 6699 5258 2846 3418 8310 1249 3866
- 7796 8668 4087 4258 8992 8996 4617 5997 2527 8204 8927 1456 9340 2088 1605 2299 9878 8347 7789 2122
- 8372 1102 4243 4208 1651 7861 4947 7802 4704 6204 4455 6012 8494 9060 3747 2786 2136 1830 7424 8309
- 6919 4420 2031 5399 2652 7219 4048 7013 5094 5276 4225 5976 4157 6722 8765 4679 1604 4986 5033 2623
- 4015 2297 3067 6261 6623 4577 4589 4747 6659 7667 7853 4040 6393 9606 7219 9334 1316 3430 9963 5187
- 4998 3735 9884 2990 1374 8436 6674 3018 5714 9352 8708 8789 7879 2965 1444 4671 4743 9817 6066 8057
- 6996 9609 2884 4601 7287 3432 4145 8858 6857 8624 4531 6579 1615 2894 4521 3274 5237 1093 3317 9289
- 7117 1850 3210 8010 2512 1394 4718 9332 5593 4118 4995 3994 5063 9426 1709 5128 4997 9287 1907 9068
- 4258 7328 6490 2603 5333 5093 8070 2116 8489 1994 7098 7409 1463 4268 9509 2358 1192 2460 5031 6292
- 4911 1192 1012 2494 5276 8981 3540 3306 8869 6678 7879 7526 8847 6270 7653 3109 6955 9760 8520 8673
- 6328 7277 7818 3285 9398 4929 4639 1617 4023 1051 9320 4955 6580 6481 3824 9611 2863 6492 6281 6203

答案提交
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
四层循环暴力
- matrix=[]
- mysum=[]
- for i in range(30):
- matrix.append(list(map(int, input().split())))
- #print(matrix[1][1])
- for i in range(0,26):
- for j in range(0,16):
- tem=0
- for p in range(0,5):
- for q in range(0,5):
- tem=tem+matrix[i+p][j+q]
- mysum.append(tem)#多循环注意缩进
- print(max(mysum))
答案: 171248
输入格式
输入一行包含一个整数 n 。
输出格式
输出一行包含一个整数,表示答案。
样例输入
9
样例输出
3
样例输入
10
样例输出
4
评测用例规模与约定
对于所有评测用例,1 <= n <= 10000 。
算法思路
模三取余判断,本体在第十题,属线性dp问题
- n=int(input())
- pad=int(n/3)
- res=n%3
- if res==0:
- print(pad)
- else:
- print(pad+1)
输入格式
输入一行包含一个字符串,仅由数字字符组成。
输出格式
输出一行包含一个整数,表示答案。
样例输入
123455
样例输出
4
样例输入
111222333111222333111222333
样例输出
18
评测用例规模与约定
对于所有评测用例,1 <= 字符数量 <= 10000 。
算法思路
逐位判断
- s=input()
- a=[]
- k=0
- for i in range(len(s)):
- a.append(int(s[i]))
- #print(a)
- for i in a:
- if a[i]%2!=0:
- k=k+1
- print(k)
输入格式
输入的第一行包含一个整数 n ,表示序列的长度。
第二行包含 n 个整数,相邻的整数之间使用一个空格分隔,表示给定的序列。
输出格式
输出一行包含两个整数,用一个空格分隔,分别表示极小值中最大的和极大值中最小的。输入保证至少存在一个极小值,至少存在一个极大值。
样例输入
- 8
- 1 8 2 4 4 3 5 3
样例输出
3 5
评测用例规模与约定
对于所有评测用例,1 <= n <= 1000,0 <= a[i] <= 10000。
算法思路
遍历
- n=int(input())
- a=list(map(int,input().split()))
- #print(a)
- mymin=[]
- mymax=[]
- for i in range(1,n-1):
- if a[i]<a[i-1] and a[i]<a[i+1]:
- mymin.append(a[i])
- if a[i]>a[i-1] and a[i]>a[i+1]:
- mymax.append(a[i])
- print(max(mymin),min(mymax))
- 1000001
- 0100010
- 0010100
- 0001AAA
- 00010A0
- 00010A0
- 00010A0
输出格式
输出一行包含一个整数,表示答案。
样例输入
- 7 7
- 1000001
- 0100010
- 0010100
- 0001AAA
- 00010A0
- 00010A0
- 00010A0
样例输出
3
算法思路
暴力枚举
- n,m=map(int,input().split())
- ans=[0]
- matrix=[]
- for i in range(n):
- matrix.append(input())
- for i in range(n):
- for j in range(m):
- u=i-0 #距离最上方
- d=n-i-1 #距离最下方
- l=j-0 #距离最左方
- r=m-j-1 #距离最右方
- times=0 #长度
- for k in range(1,min(u,d,l,r)+1):
- #print(min(u,d,l,r))
- ne=matrix[i-1][j+1] #右上方
- nw=matrix[i-1][j-1] #左上方
- s=matrix[i+1][j] #正下方
- if ne==matrix[i][j] and nw==matrix[i][j] and s==matrix[i][j]:#如果相等,则长度更新
- times = times + 1
- if times != 0:
- ans.append(times)
- #print(k)
- print(max(ans))

输入格式
输入的第一行包含一个整数 n 。
第二行包含三个整数 a, b, c 。
输出格式
输出一行包含一个整数,表示答案。答案可能很大,请输出答案除以 1000000007 后的余数。
样例输入
- 4
- 1 2 3
样例输出
7
样例输入
- 7
- 2 4 6
样例输出
0
算法思路
线性dp
- n=int(input())
- step=sorted(list(map(int,input().split())))
- dp=[0]*10000010 #线性dp数组
- dp[0]=1
- mod= 1000000007
- for i in range(1,n+1):
- if i>=step[0]:#f(n)=f(n)+f(n-a)
- dp[i]=(dp[i]+dp[i-step[0]])%mod
- if i>=step[1]:#f(n)=f(n)+f(n-b)
- dp[i]=(dp[i]+dp[i-step[1]])%mod
- if i>=step[2]:#f(n)=f(n)+f(n-c)
- dp[i]=(dp[i]+dp[i-step[2]])%mod
- #a,b,c从小到大排列,自动更新f(n)
- print(dp[n])
线性dp参考视频:走台阶问题-动态规划算法入门1_哔哩哔哩_bilibili
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。