ABC-398-E - Tree Game
Posted on
Edited on
ABC-398-D - Bonfire
Posted on
Edited on
思路讲解
赛时AC,记录一下
这个东西说难也不难,就是要抓住不变的东西,其实就是生成的烟雾相对于最初的烟雾其实相对位置是不变的
所以我们把所有烟雾相对于最初烟雾的偏离存在一个set里,接着我们得到目标块与最初烟雾的相对位置,在set里一找,然后就知道有没有烟雾了。
AC代码
https://atcoder.jp/contests/abc398/submissions/64075308
1 | // Problem: D - Bonfire |
心路历程(WA,TLE,MLE……)
ABC-398-F - ABCBA(上字符串哈希)
Posted on
Edited on
思路讲解
和这道leetcode很像
其实思路也很简单,暴力方法时间复杂度最大的部分其实是一个一个判断字符串是不是回文(一样),那么我们直接用字符串哈希加速这个过程就行。
这个下面的讲的很详细
唉,前面怎么样都不太对,结果发现其实是我的哈希递推式子错了。
hash[i]=hash[i−1]∗base+s[i]
正确的哈希递推式子长这样,相当于我们把第一位看成最高位,和我们的数字写法一样。
AC代码
https://atcoder.jp/contests/abc398/submissions/64119843
1 | // Problem: F - ABCBA |
心路历程(WA,TLE,MLE……)
ABC-395-E - Flip Edge
Posted on
Edited on
思路讲解
类似于最短路问题。但这题真的难度只有977吗?这个1400多的树上dp我都有点思路。这个是看完一点思路都没有呀。
不过图论嘛有什么难的那?我很快想到了分层图。这个其实把这张图分为两层就可以了,一层正图,一层反图,正图到反图或者反图到正图都有代价X。
其实dijsktra的关键在于是去找点,就是说目前为止找到的不确定点(dist=INF)中与原点最近的点,改为确定点就(dist=dis)好了。
AC代码
https://atcoder.jp/contests/abc395/submissions/64132524
1 | // Problem: E - Flip Edge |