07 2024 档案
ACM日常训练日记——7.30(并查集)
摘要:nowcoder训练 (并查集专项) DongDong认亲戚 这道题关键在于怎么去把字符串存入并查集,我们只需要开一个unordered_map存每一个字符串的下标即可,再上模板 #include <bits/stdc++.h> using namespace std; const int maxn
ACM日常训练日记——7.29(单调栈,滑动窗口,线性dp)
摘要:Atcoder训练 Enough Array 高质量题,建议两个星期后重新去做,滑动窗口题,找连续子串的和大于k的数 我一开始就直接想前缀和去做,但是没有考虑清楚连续的关系,只要到一个状态满足大于它的状态全部都满足 然后关键的地方是每次找到以后,把最先进入的状态弹出,也就是说从1——k变成2——k的
周总结
摘要:这一周打了不少比赛,收获真的不少,其中印象最为深刻的还是大家上去讲题,了解到不同的思路,和做题的技巧与思维方式,值得我好好去听和学习。 这一周也在学习动态规划,真的不简单看视频学习有的时候看好几遍才听懂,但是状态比上个星期好了一点,继续加油。 https://www.cnblogs.com/dont
ACM日常训练日记——7.27(快速幂,贪心)
摘要:SMU Summer 2024 Contest Round 8 1.Ubiquity 考数学,我的想法是排列组合,在n个空位中选任意两个插入0和9,其他空位任意插入,存在问题,考虑不够全面 正确做法的思想是容斥原理没怎么写过这类题,长见识了 #include <iostream> #include
ACM日常训练日记——7.26(线性dp+cf div2)
摘要:Atcoder训练 Powerful Discount Tickets 我们只需要动态维护使最大的值变小即可,这里我采用multiset去记录,有相同元素存在,也可以采用优先队列去维护 #include <bits/stdc++.h> using namespace std; using ll=lo
ACM日常训练日记——7.25(背包dp,最长公共子序列)记忆化搜素+细节二分
摘要:Atcoder训练 Harlequin 思维题博弈论,思考每一次怎么转化最优,存在两个答案说明f可以赢,打表发现当所有数字都是偶数时,答案为second,否则为first #include <bits/stdc++.h> using namespace std; using ll=long long
ACM日常训练日记——7.24
摘要:Atcoder训练 Template Matching 暴力枚举,问题给出的nxn字符串数组有没有包含下面的mxm数组 #include <bits/stdc++.h> using namespace std; using ll =long long; int n,m; int main(){ in
ACM日常训练日记——7.23
摘要:Atcoder训练 Flipping Signs 思维 通过打表观察发现,当负数为偶数时可以全部转化为正,不为偶数时,会留下一个负数,我们取绝对值最小的即可。 #include <bits/stdc++.h> using namespace std; using ll=long long; ll c
周总结(还需要再认真看学习比如Strange Balls,预处理)
摘要:我按照时间从近到远的顺序写的 1.友谊赛(2/9) 打的一坨,感觉最近状态不是很好,需要调整一下把心态正回来,要更加专注才行。 B - Reserve or Reverse 注意读题,不是替换区间的字符串,而是替换字符,并且题目的要求是替换的区间是越来越小的 ,意思就是替换的字符区间会缩小。我的写法
二分专题总结 -ZHAOSANG
摘要:上一周训练了二分专题 可能是我之前自学的时候基础没有打牢,做的时候还是吃力的。 现总结遇到的一些二分题型和思路 二分+模拟(题目最多的) [https://ac.nowcoder.com/acm/contest/86187/A][USACO 2009 Dec S]Music Notes] [http
SMU Summer 2024 第一周周报 (zhaosang)
摘要:学到了很多,不仅仅是学习方面的,在学校学跟在家寒假对比,天差地别吧。 补题的过程中收获满满,最近练习二分三分,栈队列单调栈等习题,题目不简单,努力学习中。。 打比赛也是,也有打的很惨的时候,我自己需要多总结找出原因,把短板补齐。 总的来说,这个星期很累,但很爽! 星期一:https://www.cn
2024 暑假友谊赛 1 (7.13)zhaosang
摘要:A-A https://vjudge.net/contest/638765#problem/A 一开始贪心做不出来,后面发现是dp找到转移方程即可,01dp问题 代码如下 #include <bits/stdc++.h> using namespace std; using ll =long lon
2024 暑假友谊赛-热身2 (7.12)zhaosang
摘要:E-E https://vjudge.net/problem/AtCoder-diverta2019_b 给你 a, b, c ,n就是问你有多少(ia+jb+k*c)等于n的答案i,j,k任意几个都可以为零 两种思想,数据量比较小,那么可以三重循环+减枝,或者枚举两个变量算出第三个 代码如下: 第
SMU Summer 2024 Contest Round 2 (7.9)zhaosang
摘要:A-A http://162.14.124.219/contest/1006/problem/A 考查用vector画图 我枚举到n==5才开始用,浪费40分钟,还是找规律太慢,得多学 做题代码如下:一坨 #include <bits/stdc++.h> using namespace std; u
SMU Summer 2024 Contest Round 3(7.10)zhaosang(二进制暴力)
摘要:打的最菜一次,最惨一次,题读假了 A-A http://162.14.124.219/contest/1007/problem/A 签到题 要解决这道题,素数对,数据量不是很大,所以我们可以先预处理素数,这个偶数肯定是等于小于它的两个素数,所以只需要遍历到小于它即可,把素数存起来,然后这两个素数的和
SMU Summer 2024 Contest Round 1(7.8)zhaosang
摘要:A-A http://162.14.124.219/contest/1005/problem/A 一道数学问题,求概率。 要求成功的概率,有两个色子, 一个用来抛正反面,一个用来控制得分大小,当超过某个得分值,答案正确。 模拟一下,如果考虑失败的情况太多,我们只需要考虑正确的情况,贪心就是每次都是正
2024 暑假友谊赛-热身1(7.11)zhaosang
摘要:A-A https://vjudge.net/contest/639453#problem/A 为了解决这个问题,我们需要确定将墙上的所有数字转换为数字1的最小成本。将数字i转换成数字j的代价由矩阵c[i][j]给出。 这里有一个循序渐进的方法来解决这个问题: 输入读数:读取成本矩阵c和墙体配置A。