csp
文章平均质量分 53
csp题目题解
Liang-z-x
我生怕自己本非美玉,故而不敢加以刻苦雕琢,却又半信自己是块美玉,不肯庸庸碌碌,与瓦砾为伍
展开
-
c++ 常用算法 函数 代码段 整理大全csp pat acm
常用函数字符串处理函数String to_string(Type)// 强制转换为string类型常用算法结构原创 2021-02-23 18:03:07 · 549 阅读 · 0 评论 -
leetcode 337打家劫舍 树dp
leetcode 刷题系列原题链接: 戳.class Solution: def rob(self, root: TreeNode) -> int: # 最大问题分解为 # 在树中,最常见的就是不断划分子树 # 所以找每一个节点的字数最大 # 维护两个全局字典 f={} g={} f[None]=0 g[None]=0 # f m原创 2020-11-02 14:49:23 · 229 阅读 · 0 评论 -
leetcode 124二叉树最大路径 树dp
leetcode 刷题系列原题链接: 戳.class Solution: def maxPathSum(self, root: TreeNode) -> int: dp={} # dp 为 每一个节点,左边经过他的最大路径,右边经过他的最大路径 def getdp(treenode): if not treenode in dp: answer=[0,0]原创 2020-10-31 14:48:36 · 824 阅读 · 0 评论 -
leetcode 494目标和 背包dp
leetcode 刷题系列原题链接: 戳.class Solution: def findTargetSumWays(self, nums, S) -> int: # dp[i][j] means solutionnums n=len(nums) sum_max=sum(nums) sum_min=-sum_max dp={} # dp=[[0 for _ in range(s+1)]for _原创 2020-10-30 09:22:30 · 251 阅读 · 0 评论 -
leetcode 416分割等和子集 背包dp 01dp
leetcode 刷题系列原题链接: 戳.class Solution: def canPartition(self, nums) -> bool: n=len(nums) if n < 2 : return False if sum(nums)%2 == 1: return False target = int(sum(nums)/2) dp=[[Fals原创 2020-10-27 15:35:05 · 190 阅读 · 0 评论 -
leetcode 312戳气球 区间dp 递归、遍历两种解法
leetcode 刷题系列原题链接: 戳.递归解法:def maxCoins1(self, nums) -> int: n=len(nums) # 一定要明白dp是一个开区间,因为,初始放置第一个没有两边 dp={} values=[1,] values.extend(nums) values.append(1) # 对于开区间(i,j),区间dp思路为插入第一个位置原创 2020-10-26 15:30:07 · 176 阅读 · 0 评论 -
leetcode 664奇怪的打印机 区间dp
leetcode刷题系列原题链接: 戳这里.代码class Solution: def strangePrinter(self, s: str) -> int: dp={} def getdp(i,j): if i>j: # 递归的终止条件 return 0 ans=1+getdp(i+1,j)原创 2020-10-20 15:41:42 · 275 阅读 · 0 评论 -
csp202006-2 稀疏向量 python 满分
csp202006-2ans =list(map(int,input().split()))n,a,b=ans[0],ans[1],ans[2]u={}result=0import sysfor line in sys.stdin.readlines(): index,value = map(int,line.strip('/n').split()) if a>0 : u[index]=value a-=1 else:原创 2020-10-06 08:50:14 · 250 阅读 · 0 评论 -
csp202009-2 风险人群筛查 python 满分
csp202009-2"""5 2 6 20 40 100 80100 80 100 80 100 80 100 80 100 80 100 8060 50 60 46 60 42 60 38 60 34 60 3010 60 14 62 18 66 22 74 26 86 30 10090 31 94 35 98 39 102 43 106 47 110 510 20 4 20 8 20 12 20 16 20 20 20""""""1 3 8 0 0 10 10-1 -1 0 0原创 2020-10-04 17:50:20 · 352 阅读 · 1 评论 -
csp201912-1 报数 python 满分
csp201912-1answer=[0,0,0,0]n = int(input())i=0num=1k=0while i<n: if (num%7)==0 or str(num).find('7')!=-1 : answer[k]+=1 else: i+=1 num+=1 k=(k+1)%4for i in answer: print(i)str的find函数,找不到返回-1,找到返回索引...原创 2020-10-03 10:41:50 · 192 阅读 · 0 评论 -
csp201912-2 回收站选址 python 满分
csp201912-2import sysfrom operator import itemgetter, attrgetterdef get_score(data,answer,x,y): score=0 if (x+1,y+1) in data: score+=1 if (x+1,y-1) in data: score+=1 if (x-1,y+1) in data: score+=1 if (x-1,y-1原创 2020-10-03 10:38:37 · 266 阅读 · 0 评论 -
csp202006-1 python 满分
csp202006-1import sysfrom operator import itemgetter, attrgetter n,m = map(int,input().split())i=1data=[]answer=[]while i<=n: x,y,t= input().split() t=ord(t)-65 data.append((int(x),int(y),t)) # A is 0 i+=1i=1def judge_li原创 2020-10-03 08:46:34 · 279 阅读 · 0 评论 -
ccsp csp acm python 解题 代码
csp202009-1csp202006-1.原创 2020-10-03 08:42:54 · 336 阅读 · 0 评论 -
csp202009-1 python 满分
csp202009-1import sysfrom operator import itemgetter, attrgettern,a,b=map(int,input().split())def conculate(x,y): return (x-a)**2+(y-b)**2data=[]i=1while i<=n: x,y=map(int,input().split()) dis=conculate(x,y) data.append((i,dis))原创 2020-10-02 18:47:06 · 386 阅读 · 0 评论 -
csp 公共钥匙盒 vector等stl容器的嵌套 find函数sort函数
csp解题记录公共钥匙盒 vector的嵌套解法#include<iostream>#include<algorithm>#include<vector>using namespace std;vector<int> pos;class event{ public: bool get_or_ret = 1; // 1为还钥匙...原创 2019-12-06 21:15:36 · 171 阅读 · 0 评论