码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【11.3】【VP】Codeforces Round #726 (Div. 2)


    ALL:7
    AC:7
    Rank:111

    记念第一次 AK div.2 ,这一场后几道题做起来比较顺手,而且是比较擅长的题。

    在这里插入图片描述


    D. Deleting Divisors

    题意:

    Alice 和 Bob 正在玩游戏,他们都绝顶聪明。

    开始时有一个整数 n ( 1 ≤ n ≤ 1 0 9 ) n(1\leq n\leq 10^9) n(1≤n≤109),二者轮流行动,每次行动可以在当前的 n n n 上减去其一个非 1 1 1 非 n n n 的因子。

    若 Alice 先手,某一方无法进行操作则判输,谁会赢呢?

    思路:赛时打表找的规律,不会证明。证明看 这里 。

    AC代码:https://codeforces.com/contest/1537/submission/179029276


    E2. Erase and Extend (Hard Version)

    题意:

    你有一个字符串 s s s,你可以进行两种操作。

    • 删去字符串的最后一个字符。
    • 将 s s s 变为 s + s s+s s+s, + + + 表示字符串连接,也就是复制一次字符串。

    你可以随意的进行操作,也可以不进行操作。

    你需要找到 s s s 进行操作后获得的所有长度为 k k k 的字符串中字典序最小的字符串。

    1 ≤ n , k ≤ 5 ⋅ 1 0 5 1\leq n,k\leq 5\cdot 10^5 1≤n,k≤5⋅105

    思路:策略就是,找到最长的一个后缀,去掉或者不去掉这个后缀之后,剩下的部分重复复制即可。

    看题解是在前缀字典序上求解,我是在后缀字典序上求解。一个有瑕疵的思路是,先后缀排序一下,找到最长的后缀 s [ i , n ] s[i,n] s[i,n] ,使得 s [ 1 , n ] > s [ i , n ] s[1,n]>s[i,n] s[1,n]>s[i,n] ,删掉剩下 s [ 1 , i − 1 ] s[1,i-1] s[1,i−1] 。

    但是按照我们的策略,必须还要保证 s ∞ [ 1 , i − 1 ] s^{\infty}[1,i-1] s∞[1,i−1] 是最小的,如果复制一份,第二份就会又影响到字典序,因此要复制一份之后跑后缀排序。

    AC代码:https://codeforces.com/contest/1537/submission/179034582


    F. Figure Fixing

    题意:

    你有一张 n ( 2 ≤ n ≤ 2 ⋅ 1 0 5 ) n(2\leq n\leq 2\cdot 10^5) n(2≤n≤2⋅105) 点 m n ( n − 1 ≤ m ≤ min ⁡ ( 2 ⋅ 1 0 5 , n ⋅ ( n − 1 ) 2 ) ) mn(n-1\leq m\leq \min(2\cdot 10^5,\frac {n\cdot (n-1)}2)) mn(n−1≤m≤min(2⋅105,2n⋅(n−1)​)) 边的无向连通图,第 i i i 个点上有点权 v i v_i vi​ 和目标值 t i t_i ti​。

    在一次操作中,你可以选择一条边 ( i , j ) (i,j) (i,j),并同时给 v i v_i vi​ 和 v j v_j vj​ 增加一个任意整数值,可以为负。

    你需要判断,这张图是否可以在有限步操作中,使得每个节点满足 v i = t i v_i = t_i vi​=ti​。

    思路:每个点的变化量为 d t i = t i − v i dt_i=t_i-v_i dti​=ti​−vi​ ,有解的必要条件为 ∑ d t = 0 \sum dt=0 ∑dt=0 。

    如果无奇数环,而且染色之后左部图右部图的 ∑ d t \sum dt ∑dt 相等,那么一定是有解的。否则无解。

    如果有奇数环,那么一定有解,求解的策略为:在奇数环上顺次跑一边,一定可以使得某个点 d t = d t ± 2 dt=dt±2 dt=dt±2 ,然后可以把这个 − 2 , − 1 , 1 , 2 -2,-1,1,2 −2,−1,1,2 其中之一转移到其他的点上。

    AC代码:https://codeforces.com/contest/1537/submission/179036842

  • 相关阅读:
    Python实现的热点话题发现系统
    ImportError: cannot import name ‘transforms‘ 不能从torchtext中导入transforms模块
    java文件命令行报错: 找不到或无法加载主类XXX报错及解决
    2023国赛数学建模C题模型代码
    浏览器插件有什么作用,怎么安装浏览器扩展插件
    索引和切片--numpy
    白鲸开源 DataOps 平台加速数据分析和大模型构建
    Java对象内存空间大小计算
    环形链表问题(判环、求入口点)
    2024年最新版FL Studio21.2.3 Build 4004 for Mac 版激活下载和图文激活教程
  • 原文地址:https://blog.csdn.net/weixin_51948235/article/details/127673183
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号