首页 > 其他分享 >【题解】Codeforces Round 861(CF1808)A - E1

【题解】Codeforces Round 861(CF1808)A - E1

时间:2023-03-29 20:34:33浏览次数:37  
标签:CF1808 这个 861 题解 个数 E1 对应 dp mod

我忘记了今天有阳间 CF,所以就开打的很晚,所以只是说一下做法,代码实现....还是算了吧。
但是我也看了,我的思路其他的人都有写,所以这个做法正确性没问题。

A.Lucky Numbers

题目分析:

加不超过 \(100\) 次,一定会有 \(0,9\) 同时出现的情况,所以直接暴力做没问题。

C.Unlucky Numbers

题目分析:

可以考虑暴力枚举这个数里最大的数位(\(y\))和最小的数位(\(x\)),然后只需要判断只使用 \([x,y]\) 内组成的数是否有存在在 \([l,r]\) 内的。
一种做法就是数位 \(dp\),分别限制一下上下界或者差分一下判断数量,但是这太麻烦了。
我们其实可以考虑直接用 \([x,y]\) 组成大于等于 \(l\) 的最小的数,如果这个数小于等于 \(r\) 则证明有解。
这个解法很显然是正确的。

D.Petya, Petya, Petr, and Palindromes

题目分析:

显然对于一个区间其的贡献就是对应位置上的数不相同的数量。
可以发现对于某一个位置来说,不同的长度为 \(k\) 的子区间只是让它对称过去对应的数的位置不一样罢了,所以就考虑对于每一个数单独计算贡献。
假设我们可以维护出这个数能对应的区间 \([l,r]\),那么我们的答案就是 这个区间上与这个数不同的数的个数(不是种类),而这个不好求,可以转化为总共 对应的数的个数 - 相同的数的个数。
对于相同的数的个数我们可以对于每一个数维护一个数组,然后直接在数组上二分 \([l,r]\) 对应数组中的哪一段,这一段内的数的数量就是我们要的相同的数。
而对于 \([l,r]\) 来说,肯定随着我们下标的递增而单调不降,所以双指针维护就好了。
注意因为一个数只会对应与它下标奇偶性相同的位置,所以并不能直接以我们得到的区间长度为最终的结果,应该加一些细节。

E1.Minibuses on Venus (easy version)

题目分析:

显然可以想到设 \(dp[i][j]\) 表示前 \(i\) 个数和模 \(k\) 为 \(j\) 的方案数,但是我们好像不大能限制可行方案这个条件。
其实我们的可行方案的条件可以转化为:

\[\begin{aligned} &\exists x\in A,S - x = x \mod k \\ \to &\exists x \in A,S = 2\times x \mod k \end{aligned} \]

也就是说我们可以直接枚举 \(S\% k\) 的值,然后对于 \(S = 2 \times x \mod k\) 的 \(x\) 显然只有一个值,只需要在 \(dp\) 的时候限制这个数必须被插入就好了,也就是可以直接用 \(x\) 去初始化 \(dp\) 数组。

标签:CF1808,这个,861,题解,个数,E1,对应,dp,mod
From: https://www.cnblogs.com/linyihdfj/p/17270178.html

相关文章

  • CF1009F 题解
    一、题目描述:给定一棵以 1 为根,n 个节点的树。设 d(u,x) 为 u的子树中到 u 距离为 x 的节点数。对于每个点,求一个最小的 k,使得 d(u,k) 最大。 二、......
  • CentOS7中远程连接数据库连不上的问题解决方法
      当远程连接数据库连接不起来时:可能原因:1.检查网络防火墙或其他安全设置是否阻止了连接  2.mysql服务是否启动,查看systemctlstatusmysql3.是否提前授权:......
  • ABC291题解(D-G)
    ABC291D-FlipCardsSolution:考虑DP,定义状态\(F_{i,0}\)为第\(i\)张卡片正面朝上的方案数,\(F_{i,1}\)为第\(i\)张卡片背面朝上的方案数,每次check是否相同然后转移即可......
  • 使用SQLALCHEMY 出现warning的问题解决
    运行程序时出现错误:UserWarning:NeitherSQLALCHEMY_DATABASE_URInorSQLALCHEMY_BINDSisset.DefaultingSQLALCHEMY_DATABASE_URIto"sqlite:///:memory:".'Neithe......
  • CF429D Tricky Function 题解 分治/平面最近点对
    题目链接:http://codeforces.com/problemset/problem/429/D题目大意:给定一个长度为\(n\)的数列\(a_1,a_2,\ldots,a_n\)。用\(s\)表示\(a\)的前缀和数组,即\(s_......
  • buu [CISCN] BadProgrammer题解
    [CISCN]BadProgrammer页面很长,有很多的按钮,但是点了之后都没反应查看源码、扫描打开到具体目录一个个目录点开看,在static/下找到了一个flag.ejs文件下载,打开......
  • [ARC131D] AtArcher 题解
    题意数轴上有一个箭靶以\(0\)为轴心左右对称,给定每个得分区域的范围和分值,要求射\(N\)支箭在靶上,且任意两支箭的距离不少于\(D\),求最大得分。保证从中心向两侧分数不......
  • android:state_pressed标签失效或android:state_enabled标签失效问题解决
    问题描述:android:state_pressed标签失效或android:state_enabled标签失效,点击不会变色,可用/不可用时不会变色。 <?xmlversion="1.0"encoding="utf-8"?><selector......
  • 省选武汉联测 13 题解
    省选模拟赛俩构造一交互挺nm逆天。赛后题解区就一句Surprise!!!没题解也挺nm逆天。那建议组题人的马先消失一下。这时候就体现学长博客的重要性了。搜关键词搜到三......
  • Conda in Windows under MSYS2 and Zsh 的问题解决
    CondainWindowsunderMSYS2andZsh的问题解决在Window11上使用gitbash安装zsh,并配置p10k主题,主要问题就是prompt中无法显示condaenv;condaactivate/deactivate......