上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 27 下一页
摘要: //update:2020/11/22 期中成绩下来了,班级rank6,级部rank22,分数名次都在意料之外,历史老师放水了啊(66->78??)还有地理莫名少了六分QAQ…… xhy大佬还是日常级部前十orzzzzzz lpy大佬几个周没上晚自习仍级部前60 orzzzzz 我还是太菜了www 阅读全文
posted @ 2020-11-19 23:44 尹昱钦 阅读(352) 评论(4) 推荐(0) 编辑
摘要: 咕了好久………… 期中考试结束了,终于有时间写一写游记之类的了。 但是印象真的好模糊了………… 还好有我的一篇周记作为参考 Day 0 晚上去机房听老师强调一下注意事项,然后刷了一套题,感觉还不错。 得知第二天我们走的比上学时间晚二十分钟,美滋滋~ Day 1上午 多睡了一会感觉就是不一样 今年我们 阅读全文
posted @ 2020-11-19 23:13 尹昱钦 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 传送门 解题思路 枚举星星数,每加一颗星星,有以下情况: 零星关卡变成一星 一星关卡变成两星 一个零星关卡变成两星,一个一星关卡变成零星 一个零星关卡变成两星,一个两星关卡变成一星 转化为优选队列就是: q1:零星关卡到一星的代价 q2:零星关卡到二星的代价 q3:一星关卡从二星变成一星的代价 q4 阅读全文
posted @ 2020-11-05 23:02 尹昱钦 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 传送门 解题思路 和种树这道题很像。 这个就是先差分求出每两个之间的间隔共n-1个,然后把这n-1个看做点,与种树一样处理。 注意因为要距离和最小,所以: 要用小根堆 要把a[0]和a[n]初始化成一个很大的数,因为在更新a[1]时要a[0]+a[2]-a[1],而0这个点我们不能选,所以初始化一个 阅读全文
posted @ 2020-11-05 20:31 尹昱钦 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 传送门 解题思路 错误思路:对于每天的股票,若比当前入手的最低价股票高,则入手前面的,并在今天卖出去,再把今天的买入,为以后做准备。 #include<iostream> #include<cstdio> #include<cstring> #include<queue> using namespa 阅读全文
posted @ 2020-11-04 23:31 尹昱钦 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 传送门 解题思路 还是反悔贪心。按照位置从左到右排序,每走到一个新的机房就m减去走的路程,然后判断剩下的时间够不够ak此机房,如果够,就ak,并把时间加入到大根堆中,如果不够,就比较堆顶,若当前更优,就弹出堆顶,把新元素加入堆。 AC代码 1 #include<iostream> 2 #includ 阅读全文
posted @ 2020-11-04 21:33 尹昱钦 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 传送门 解题思路 反悔贪心。按照结束时间排序,然后枚举结束时间,能修就修,不能修就比较以前修过的耗时最长的建筑和当前这个建筑比较是否更优。 注意这里用大根堆。 AC代码 1 #include<iostream> 2 #include<cmath> 3 #include<cstring> 4 #inc 阅读全文
posted @ 2020-11-04 20:49 尹昱钦 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 传送门 解题思路 反悔贪心。排序后,枚举时间,每次能加就加,并且把对应权值扔到小根堆里,若不能加,就把权值和小根堆堆顶比较,若更优,则换成这个任务,把原来那个踢出堆顶,扔进这个点,并且ans加上两个点的权值差。 注意ans要用long long保存,不然会惨遭41分。 AC代码 1 #include 阅读全文
posted @ 2020-11-04 20:19 尹昱钦 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 传送门 解题思路 用f[i]表示已经买了i种,到买齐邮票的期望买的张数。 用g[i]表示已经买了i种,到买齐邮票的期望花的价格。 所以 f[i]=(f[i]+1)*(i/n)+(f[i+1]+1)*((n-i)/n) g[i]=(g[i]+f[i]+1)*(i/n)+(g[i+1]+f[i+1]+1 阅读全文
posted @ 2020-10-31 20:04 尹昱钦 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 传送门 解题思路 用a[i]表示第i位为1的x^1的期望; 用b[i]表示第i位为1的x^2的期望; 用ans[i]表示前i位的x^3的期望。 显然的是, a[i]=(a[i-1]+1)*p[i]。 b[i]=(b[i-1]+2*a[i-1]+1)*p[i]。 ans[i]=(ans[i-1]+3* 阅读全文
posted @ 2020-10-30 21:52 尹昱钦 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 传送门 高斯消元 什么叫高斯消元? 就是解多元方程组的一种方法。 给你n个方程组,包含着n个未知数,告诉你每一个方程中的每一个未知数的系数和常数项。 怎么解? 和数学上差不多,把第一个方程保留第一个未知数(设系数为k),把第二个到第n个方程的第一个未知数的系数化为-k,用加减消元即可。 以此类推,枚 阅读全文
posted @ 2020-10-30 20:47 尹昱钦 阅读(131) 评论(0) 推荐(1) 编辑
摘要: 直接放 论文网址: 百度文库 个人总结与体会: 两种方法,一种是O(s^2),s为障碍点个数。一种是O(n*m),一般使用第二种会快一点。 垂线法运用了贪心思想,枚举的垂线都尽可能向两边拓展,O(n*m)枚举,O(1)求解(提前预处理)。 阅读全文
posted @ 2020-10-29 00:18 尹昱钦 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 传送门 解题思路 自己一开始做的时候知道是dp,但是设计的状态总是有后效性的(看来还是做题少了),看完题解才恍然大悟。 设dp[u][i][j]表示以u为根的子树,选取前i个儿子,用户数为j的最大利润,用类似区间dp的性质,dp[u][i][j]可以从dp[u][i-1][j-k]+dp[v][si 阅读全文
posted @ 2020-10-26 23:25 尹昱钦 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 问题表述 对于(int)90*0.7,在float下会算出63,而在double下则会取得62。 根本原因 double和float的精度不同,因而对于数字的保存不同,例如0.7在double下会有一个小项,导致存储是是63-(一个很小的数),所以在取int时(舍弃低位),就会变成62。 有些时候f 阅读全文
posted @ 2020-10-25 20:59 尹昱钦 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 传送门 解题思路 用dp[i][0]表示第i个节点染绿色的以i为根的子树的最大(最小)染绿色总数,dp[i][1]表示染红色,dp[i][2]表示染蓝色。 各种情况转移即可。 写完代码后发现,dp[i][1]和dp[i][2]相等,所以其实可以合并起来,这样能少许多代码量。 AC代码 1 #incl 阅读全文
posted @ 2020-10-23 23:54 尹昱钦 阅读(116) 评论(0) 推荐(0) 编辑
上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 27 下一页