随笔分类 - Codeforces
摘要:题意 给你一个长度为$n$的数组$a$和3个数字$h,l和r$。$t$初始为0,每次可以使$t=(t+a_i) \% h$或者$t=(t+a_i 1)\%h$,如果这时$t\in\left[l,r\right]$就将$ans$加1。求$ans$的最大值。 解题思路 这场比赛的题感觉偏简单了。 这是一
阅读全文
摘要:题意 给你一个数组$a$,只要满足$a_i=a_{i+1}$就可以将这两个元素合并成一个值为$a_i+1$的元素,问数组最小长度。 解题思路 记得之前某场的F和这题差不多,当时好像是相邻且相等就可以移除这两个数问最小长度。 看到$n$的范围就想到区间DP了,感觉是一道挺裸的区间DP板子题。 AC代码
阅读全文
摘要:题意 给你$n$和$m$,问满足以下条件的数列的个数: 数列长度为$n$ 数列值域范围为$\left[1,m\right]$ 数列有且仅有一对相等的数 数列是单峰数列(先严格递增后严格递减,严格递增或严格递减) 解题思路 首先从$m$元素中挑出$n 1$个不同的值,有$C_m^{n 1}$种方法。现
阅读全文
摘要:题意 有$n$个武器,第$i$个武器攻击力为$a_i$,价值$ca_i$。 有$m$个防具,第$i$个防具防御力为$b_i$,价值$cb_i$。 有$p$个怪,第$i$个怪攻击力为$x_i$,防御力为$y_i$,价值$z_i$。 可以选择$1$个武器和$1$个防具,假设选择第$i$个武器和第$j$个
阅读全文
摘要:题意 有个人要从$s$走到$t$,经过的路径给定。导航系统每次会显示当前节点到$t$的最短路,有多条就显示其中之一。这个人如果按照导航走,那么啥都没变。如果没有按导航走导航就会重新导航。问重新导航的最小和最大次数。 解题思路 建反图,在反图上以$t$为源跑dijkstra最短路。 在原图上dfs 若
阅读全文
摘要:题意 给你一个字符串,字符$s_i$可以被伤处当且仅当$s_{i 1}=s_i 1$或$s_{i+1}=s_i 1$。问最多能删几个字符。 解题思路 其实,有个很简单的做法就是从$z$开始枚举到$b$,能删就删,因为如果现在枚举到的字符删不掉,之后也不可能能删掉。 但是比赛的时候我突发奇想,搞了个$
阅读全文
摘要:题意 给定长度为$n$的序列$a$,以及m个询问$$,每次询问满足下列条件的子序列中第$pos$位的值为多少。 子序列长度为$k$ 序列和是所有长度为$k$的子序列中最大的 字典序是所有满足上述两个条件的序列中最小的 解题思路 稍作分析即可得出,将序列按值的大小作为第一关键字(升序),下标作为第二关
阅读全文
摘要:解题思路 用2 SAT的思路将题目转化为:已知$n$个二元组$$,可以算出有多少属于不同二元组的元素$(a,b)$存在冲突,要在每个二元组$$中选择选择一个元素,且要尽可能的少选$y$,问是否可以选取$n$个两两不相互矛盾的元素,若可以输出选取方案。 经过简单的推导可以得到,对于$$和$$ 若$x_
阅读全文
摘要:题意 有个人要去圣彼得堡旅游,在圣彼得堡每天要花$k$块钱,然后在圣彼得堡有$n$个兼职工作$l_i,r_i,p_i$,如果这个人在$l_i$到$r_i$这个时间段都在圣彼得堡,那么他就可以赚到$p_i$块钱,现在他要规划旅游计划$\left[ L,R\right]$,表示他会在$L$到达,在$R$
阅读全文
摘要:题意 给定数组$a(\left| a \right|\leq 10^5)$和整数$k(2\leq k \leq 100)$,问满足一下条件的二元组$$的数目: $1 \leq i using namespace std; typedef long long ll; const int maxn=1e
阅读全文
摘要:题意 给定整数c和数组a,b,$a_i$表示通过爬楼梯的方法从第$i$层到$i+1$层需要的时间,$b_i$表示通过坐电梯的方法从第$i$层到$i+1$层需要的时间,坐电梯前需要等c单位时间。即对于$i using namespace std; typedef long long ll; const
阅读全文