acwing刷题
更科瑠夏Q_Q
想和大家一起进步,变得更优秀
展开
-
蓝桥杯板子 python
N个数的最大公约数:def gcd(a,b): if b==0: return a return gcd(b,a%b)def super_gcd(num):#处理的N个数放Num里 l=len(num) if l==1: return num[0] elif l==2: return gcd(num[0],num[1]) else: return gcd(super_gcd(num[:l原创 2022-04-08 09:57:12 · 515 阅读 · 0 评论 -
蓝桥杯真题练习
[蓝桥杯2017初赛]等差素数列朴素做法 枚举首项和公差#未使用素数筛a=[0 for i in range(1000000+10)]def check(n): i=2 while i<=n**0.5: if n%i==0: return 0 i+=1 return 1def init(): for i in range(2,100000): if check(i):原创 2022-04-07 22:55:52 · 125 阅读 · 0 评论 -
2022蓝桥杯模拟赛 python
1.以下是一个 25 行 25 列的字母矩阵,全部由字母 A 和 B 组成。AAAAAAABABBAABABABAAAAAAAABBBBBABBAABBBBBABABBBBBAABAAABABBBABAABBBBABAAABAABAAABABBBBBAABAABABAAABAABAAABABBABABBABABABAAABAABBBBBABBBABAABBBBABBBBBAAAAAAAABABABABABABAAAAAAABBBBBBBBABAABABBBBBBBBBBBAABAAB原创 2022-04-07 09:28:14 · 1629 阅读 · 0 评论 -
第十二届蓝桥杯真题 python
A题 空间:n=256*1024*1024*8//32print(n)#1MB=1024KB=1024*1024B=1024*1024*8bit#32位二进制 为32bitB题 卡片:f=[2021 for i in range(10)]res=1flag=1while True: c=res while c: a=c%10 if f[a]: f[a]-=1 else:原创 2022-03-23 23:13:45 · 2104 阅读 · 0 评论 -
分组背包问题
9. 分组背包问题 - AcWing题库N=105#f[i][j] 表示从前i件物品中选,体积<=j,属性为价值max#分割点:不选取第i件物品 f[i-1][j]#选取第i件物品k件 f[i][j]=max(f[i][j],f[i-1][j-k*v[i]]+w[i]*k)# f[i][j-v[i]]=max(f[i-1][j-v[i]],f[i-1][j-v[i]-k*v[i]]+w[i]*k)f=[[0 for i in range(N)]for i原创 2022-03-22 10:16:14 · 290 阅读 · 0 评论 -
多重背包问题 II
5. 多重背包问题 II - AcWing题库因为数据量的问题,采用了二进制优化N=2005M=20010#f[i][j] 表示从前i件物品中选,体积<=j,属性为价值max#分割点:不选取第i件物品 f[i-1][j]#选取第i件物品k件 f[i][j]=max(f[i][j],f[i-1][j-k*v[i]]+w[i]*k)# f[i][j-v[i]]=max(f[i-1][j-v[i]],f[i-1][j-v[i]-k*v[i]]+w[i]*k原创 2022-03-22 09:41:59 · 85 阅读 · 0 评论 -
多重背包问题 I
4. 多重背包问题 I - AcWing题库N=105#f[i][j] 表示从前i件物品中选,体积<=j,属性为价值max#分割点:不选取第i件物品 f[i-1][j]#选取第i件物品k件 f[i-1][j-k*v[i]]+w[i]*kf=[[0 for i in range(N)]for j in range(N)]v=[0 for i in range(N)]w=[0 for i in range(N)]s=[0 for i in range(N)]n,v=map(int,i原创 2022-03-22 09:06:21 · 240 阅读 · 0 评论 -
背包九讲 完全背包问题
3. 完全背包问题 - AcWing题库N=1005#f[i][j]:选取i个物品,体积<=j#划分:选第j个k次 f[i-1][j-k*v[i]]+k*w[i]#不选 f[i-1][j]#直接使用k遍历,时间复杂度过不去,优化一下即可过去f=[[0 for i in range(N)]for j in range(N)]a=[0 for i in range(N)]b=[0 for i in range(N)]n,v=map(int,input().split())for i原创 2022-03-21 23:03:22 · 110 阅读 · 0 评论 -
背包九讲 python
01背包问题题目来源:acwing2. 01背包问题 - AcWing题库N=1005#f[i][j]:i件物品,体积为j 属性:总价值max#分割:不要第i件物品,f[i][j]=f[i-1][j]#要第i件物品:f[i-1][j-v(i)]+w[i]f=[[0 for i in range(N)]for i in range(N)]a=[0 for i in range(N)]b=[0 for i in range(N)]n,v=map(int,input().split()原创 2022-03-21 22:41:34 · 962 阅读 · 0 评论 -
acwing 语法基础课 python/c++ 代码 week3 循环语句
题单708. 偶数C++代码#include <bits/stdc++.h>using namespace std;int main(){ //编写一个程序,输出 1 到 100 之间(包括 1 和 100)的全部偶数。 int i; for (i=1;i<=100;i++){ if(i%2==0){ cout<<i<<endl; } } return 0;} python代码#python代码for i原创 2022-01-06 10:51:30 · 586 阅读 · 0 评论 -
acwing 语法基础课 week2 printf语法及判断语句 C++/python代码
蓝桥杯准备阶段原创 2021-12-14 16:16:03 · 4068 阅读 · 0 评论 -
acwing 语法基础刷题 (第一讲习题)python C/C++ 第二天
605. 简单乘积//C++版本 #include <bits/stdc++.h>using namespace std;int main(){ int a,b,X; cin>>a>>b; X=a*b; printf("PROD = %d",X); return 0;}#python版本a=int(input())b=int(input())print("PROD = %d"%(a*b))611. 简单计算/原创 2021-12-01 15:48:01 · 262 阅读 · 0 评论 -
acwing 语法基础刷题 (第一讲例题)python C/C++ 第一天
语法基础题目表AcWing 89. a^b 快速幂//python代码def power(a,b,p): tmp=1 while b: if b&1: tmp=tmp*a%p a=a*a%p b>>=1 return tmp%pa = input().split()print(str(power(int(a[0]), int(a[1]), int(a[2]))))原创 2021-11-29 15:55:06 · 1368 阅读 · 0 评论