• ICPC/CCPC好题精选


    Problem J. Xingqiu’s Joke

    你有一个两个正整数构成的二元组\((a,b),a,b\in[1,10^9]\),你可以进行如下操作:

    • \((a,b)->(a-1,b-1)\)
    • \((a,b)->(a+1,b+1)\)
    • \(g\)\(\gcd (a,b)\)的某个质因子\((a,b)->({a\over g},{b\over g})\)

    最少需要多少操作,可以使得\(a=1\)或者\(b=1\),多组询问\(T\le 300\)

    \(f(a,x)\)表示\((a,a+x)\)的答案,从\(f(\lfloor \frac a g \rfloor,\frac x g)\),\(f(\lceil \frac a g \rceil,\frac x g)\)转移过来,第二维状态很少,第一维状态在于上下取整的选择。而不管怎么选择,除出来的数总在全向下除和全向上除之间。因此状态数很少。

    Problem I. Cloud Retainer’s Game

    现在有一个高度为\(H\),长度无限的空间。你有一个小球,初始位置在\((0,0)\),初始速度为\((1,1)\)。然而在\(y=0\)\(y=H\)\((x_1,y_1)...(x_n,y_n),n\le 10^5\)有挡板,小球遇到挡板会\((v'_x,v'_y)=(v_x,-v_y)\)。此外,在\((x'_1,y'_1)...(x'_m,y'_m)\)有金币。小球碰到金币就得到这个金币。

    你现在可以去除\((x_1,y_1)...(x_n,y_n)\)中任意多个, 问你最多可以得到多少金币?

    Problem K. Circle of Life

    有一个长度为\(n \le 10^7\)的01串,服从“生命游戏”规则,即:

    • 某个0,如果相邻的位置恰好有一个1下一轮变为1

    • 其他情况,无论\(1\)还是\(0\),下一轮都是\(0\)

    给定\(n\),请你构造一个串,使得这个串无穷轮也不是全\(0\)

    Problem H. Crystalfly

    给定一棵\(n\le 10^6\)个节点的树,树的节点\(i\)上有萤火虫\(a_i\)只,你到达这个节点就可以获得其所有萤火虫。现在你在根节点,你可以沿着树边移动,每秒钟移动一条边。然而萤火虫十分滴珍贵,你到达任何一个节点,他所有相邻的节点\(u\)将被扰动,\(u\)节点的萤火虫(如果还有)将在\(t_u\le 3\)秒后消失。请问最多可以得到多少萤火虫?

    J. Two Binary Strings Problem

    给定\(n\le50000\)\(a_i\)\(b_i\),定义:

    \[f(l,r)=\begin{cases} 1,& \text{if}\;\sum\limits_{i=l}^r a_i > \frac{r-l+1}{2} \\ 0,&\text{otherwise} \end{cases} \]

    定义一个\(k\)是“十分珍贵的”,当且仅当对于所有\(i\)\(f(\max\{1,i-k+1\},i)=b_i\)

    多组询问,\(T\le 50000,\sum n \le 50000\)

    A. So Many Lucky Strings

    给定一串字符串序列\(\{s_1,s_2\dots s_n\},n\le 100,\sum |s_i|\le 10^5\),一个合法的子序列定义为“字符串依次相接后是一个回文串”,请问有多少种不同的子序列?

    C. Colorful Tree

    给定一棵\(n\le 10^5\)个节点的树,每个叶子节点都有一个喜欢的颜色\(c_i\)。你是一个粉刷匠,每次可以粉刷一个节点及其子树内所有节点。你最少粉刷多少次可以使得所有叶子节点满意

    L. Karshilov's Matching Problem

    你有一些十分珍贵的串\(\{t_1,t_2,\dots t_n\},\sum |t_i| \le 10^5,n\le 10^5\),每个串有个珍贵值\(w_i\)。王大队长给你一个串\(S,|S|\le 3\times 10^5\),和\(m\le 3\times 10^5\)个要求,要求分别为

    • \(1 \quad l \quad c\):将\(S\)的后缀\(l\)个全部改为\(c\)
    • \(2 \quad l\):查询\(S[1\dots l]\)的价值。其中价值定义为:$\sum w_i \times $$(t_i\(在\)S[1\dots l]\(的出现次数\))$。

    请你支持这两个操作。

    C. Assign or Multiply

    你有一个数\(x\),一开始\(x=1\)。除此之外你还有\(n\le 10^6\)次操作,分为两种:

    • \(x:=a_i\)\(x\)赋值为\(a_i\)
    • \(x:=x\times a_i\)\(x\)赋值为\(x \times a_i\)

    所有操作对\(p\le 2\times 10^5\)取模,\(a_i\in[0,p)\)

    你可以随意打乱操作顺序,请问你可以得到多少种最终的\(x\)

    H. What logic for?

    你有两个串\(S\)\(T,|S|=|T| \le 10^5\)。司令说\(S\)\(T\)K-等价的当前仅当\(S\)可以被K-变换\(T\)

    其中K-变换的定义为:

    • 选取一个长度为\(2k\)的字符串段\(S[b\dots b+2k-1]\),对于\(i=0\dots k-1\)交换\(S[b+i]\)\(S[b+k+i]\)

    \(n\le 10^5\)组询问\((S,T,k)\),每组询问\(2k\le |S|\)此外\(\sum |S|+|T| \le 10^5\)

    对于每个询问,回答是否是K-等价

    Problem M. Harmony in Harmony

    有一块总面积为\(1\)\(2D\)土地,定义这个土地的面积划分\(S=\{s_1,s_2,\dots s_n\},n\le 500\),其中\(|s_1|=|s_2|=\dots=|s_n|=\frac 1 n\)\(s_i\)表示土地,\(|s_i|\)表示面积。并且\(s_i\cap s_j=\empty\quad (i\not =j)\)。值得高兴的是,划分出来的土地并不需要是某种特定形状甚至可以不连续。因此\(2D\)土地的形状其实也无所谓。

    \[\min_{S,A}\{\max_{\{p\}}\{\min_{i=1}^n\{|S_i\cap A_{p_i}|\}\}\} \]

    其中\(S\)\(A\)都是这个土地的面积划分,\(p\)是枚举排列。(即由你确定\(S\)\(A\)的情况下,不断枚举排列\(p\)由上式得到一个值,使这个值最小化。)

    E. Paimon Segment Tree

    有一个长度为\(n\le 5\times 10^4\)的正整数序列,有\(m\le 5\times 10^4\)次修改操作和\(q\le 5\times 10^4\)次询问操作

    • 修改操作\(l_i,r_i,x_i\ge 1\),将\(a_l\dots a_r\)加上\(x\)。记录修改后当前序列为一个版本\(a^{(i)}\)
    • 查询操作\(l,r,x,y\),查询$\sum_{j=x}^y \sum_{k=l}^r (a{(j)}_k)2 $

    D. Degree of Spanning Tree

    给定一个\(n\le 10^5\)个节点\(m\le 2\times 10^5\)条边的无向联通图,请你生成一个没有度数大于\(n\over 2\)的点的生成树。

    送分题

    给定一个有\(n\le 20\)个节点的有向图,每条边走路要\(t_i\),骑单车要\(c_i\le t_i\)的时间。每个节点都有可能有一个共享单车,概率为\(p_i\),价钱为\(p_i\)。由于时间就是金钱,你将一个单位的时间视作一个单位的金钱。你现在要从起点走到终点,最优策略下,期望最少花多少钱?

  • 相关阅读:
    VIM常用操作
    计算机之二进制基础
    交换机安全学习笔记 第六章 IPV4 ARP攻击
    交换机安全学习笔记 第八章 针对POE的攻击
    交换机安全学习笔记 第九~十章 HSRP VRRP
    CSRF-DVWA_1.9-笔记
    命令注入-笔记
    暴力破解-H3C路由器-MSR900
    暴力破解-DVWA_1.9-笔记
    DVWA、 DSVM 环境搭建简述
  • 原文地址:https://www.cnblogs.com/winlere/p/15864048.html
Copyright © 2020-2023  润新知