问题 B:染色

题目描述

有长度为 \(n\) 的一个序列,编号为 \(1\) 到 \(n\) ,现要对这些元素进行染色标记,若编号 \(i-j\) 为素数,且 \(1\le i < j \le n\) ,则 \(i\) 和 \(j\) 必须染上不同的颜色。

是否存在一种方案使得颜色尽可能少呢,请输出该方案

如有多种,则输出任意一种。

输入格式

第一行一个整数 \(n\) 。

输出格式

第一行一个整数 \(k\) ,表示所用的颜色数。

第二行 \(n\) 个整数 \(col_i\)( \(1 \leq col_i \leq k\) ),表示 \(i\) 的颜色。

样例输入

点击查看
7

样例输出

点击查看
4
1 2 2 3 3 4 1

提示

对于 \(30\%\) 的数据,\(n \leq 10\);

对于 \(60\%\) 的数据,\(n \leq 20\);

对于 \(100\%\) 的数据,\(n \leq 10^4\)。

题解

好像只要每非质数个就重复就可以了,就是别忘了特判一下比较小的情况,但变成八个一组就好了,放代码

点击查看代码
#include<cstdio>
#include<algorithm>
using namespace std;
int n;
int main()
{
scanf("%d",&n);
printf("%d\n",min(4,(n+1)/2));
for(int i=1;i<=n;i++){
printf("%d ",(i-1)%8/2+1);
}
return 0;
}

问题 C:字符串变换

题目描述

对于字符串 \(A\) ,需要修改多少次才能变成 \(B\) 。

修改规则如下:

  1. 在第 \(i\) 个位置插入一个字符 \(K\)

    \(...S_{i-1}S_{i}S_{i+1}...\Rightarrow S_{i-1}KS_{i}S_{i+1}\)

  2. 删除第 \(i\) 个位置的字符

    \(...S_{i-1}S_{i}S_{i+1}...\Rightarrow S_{i-1}S_{i+1}...\)

另外,我们定义最大修改次数\(C\),要求在\(C\)次以内修改成功,如果可以,输出修改次数,否则输出\(-1\)

输入格式

输入共包含 \(3\) 行。

第 \(i\) 行包含三个整数 \(n\) , \(m\) , \(K\) ,分别表示原始串 \(A\) 的长度 \(n\) ,目标串 \(B\) 的长度 \(m\) 和限制的最大修改次数 \(K\) 。

接下来 \(2\) 行,分别输入原始字符串 \(A\) 和目标字符串 \(B\)。

输出格式

输出共包含 \(1\) 行,如果最小修改次数小于等于 \(K\) ,则输出最少修改次数,不然输出 \(-1\) 。

样例输入

点击查看
3 4 2
bee
beef

样例输出

点击查看
1

提示

对于其中 \(25\%\) 的数据,\(n,m \leq 10\) 。

对于其中 \(50\%\) 的数据,\(n,m \leq 1000\) 。

对于另外 \(25\%\) 的数据,\(K \leq 10\) 。

对于 \(100\%\) 的数据,满足 \(0 \leq n,m \leq 500000,0 \leq K \leq 100\) 。字符串中只包含小写字母。

问题 D:路径统计

题目描述

你有一棵 \(n\) 节点的树 \(T\),回答 \(m\) 个询问,每次询问给你两个整数 \(l\),\(r\),问存在多少个整数 \(k\) 使得从树上编号为 \(l\) 的点沿着 \(l→r\) 的简单路径走 \(k\) 步恰好到达 \(k\) 。

输入格式

第一行,两个整数 \(n,m\) 表示节点数和询问数。

之后 \(n-1\) 行,每行两个整数 \(u,v\) 表示一条边。

之后 \(m\) 行,每行两个整数 \(l,r\) 表示 一个询问,题意同题目描述。

输出格式

\(m\) 行,对于每个询问单独输出一行表示你的答案。

样例输入

点击查看
9 3
5 4
4 3
3 7
4 1
1 6
1 8
1 9
5 2
6 7
2 3
3 2

样例输出

点击查看
2
1
0

样例解释

如图,红色表示第一次询问中 \(k=0,1,…,4\) 的情况,蓝色表示第二次询问,绿色是第三次询问。

其中,在第一次询问中:

  • 走 \(0\) 步到达 \(6\),不符题意。

  • 走 \(1\) 步到达 \(1\),满足题意。

  • 走 \(2\) 步到达 \(4\),不符题意。

  • 走 \(3\) 步到达 \(3\),满足题意。

  • 走 \(4\) 步到达 \(7\),不符题意。

数据范围

测试点编号 \(n≤\) \(m≤\) 特殊性质
\(1~3\) \(10\) \(10\) \(AC\)
\(4~6\) \(100\) \(100\) \(AC\)
\(7~10\) \(500\) \(500\) \(ABC\)
\(11~13\) \(10^4\) \(10^4\) \(AB\)
\(14~16\) \(10^5\) \(10^5\) \(AB\)
\(17~20\) \(3×10^5\) \(3×10^5\) \(none\)

\(A\) : 一条链

\(B\) : 深度不超过 \(50\)

\(C\) : 将 \(1\) 作为根时会形成一棵二叉树

Round #2022/11/26的更多相关文章

  1. ssh The authenticity of host '10.11.26.2 (10.11.26.2)' can't be established

    The authenticity of host '10.11.26.2 (10.11.26.2)' can't be established. ECDSA key fingerprint is SH ...

  2. string源码分析 ——转载 http://blogs.360.cn/360cloud/2012/11/26/linux-gcc-stl-string-in-depth/

    1. 问题提出 最近在我们的项目当中,出现了两次与使用string相关的问题. 1.1. 问题1:新代码引入的Bug 前一段时间有一个老项目来一个新需求,我们新增了一些代码逻辑来处理这个新需求.测试阶 ...

  3. Goland 2020.2.x 激活码永久破解教程 (最新Goland激活码!2020.11.26亲测可用!)

    在2020.11.26 Goland的用户们又迎来了一次更新,这就导致很多软件打开时候就提示Goland激活码已经失效,码小辫第一时间给各位分享了关于最新Goland激活破解教程! goland已经更 ...

  4. VS Code 调教日记(2022.6.26更新)

    VS Code 调教日记(2022.6.26更新) 基于msys2的MinGW-w64 GCC的环境配置 下载并安装msys2 到路径...msys2安装路径...\msys64\etc\pacman ...

  5. .net NPOI Excel导入:时间格式2022/5/26导入变成26-5月-2022

    1.问题由来 在做一个导入的需求时,测试导入模板,无论导入模板里的日期设置成何种日期格式到代码中都会提示有不正确的格式化数据,加断点调试发现,导入的日期如:Excel表格中是2022/5/26,断点看 ...

  6. web安全学习笔记(2022/8/26)

    网络安全Web学习笔记 @author: lamaper @email: lamaper@qq.com @blog: lamaper - 博客园 (cnblogs.com) @date: Aug.26 ...

  7. 2020.11.26 IntellJ idea激活码失效解决方法(最新idea激活码及安装参数!)

    今天是2020年11月26号,小伙伴们是不是有发现自己的idea激活码失效了,不瞒大家,小编也是一个JAVA开发者,到了公司打开idea,然后就发现事情不妙,经过1个多小时的摸索,终于把最近的安装参数 ...

  8. 2022.11.08 NOIP2022 模拟赛五

    「LibreOJ NOIP Round #1」DNA 序列 注意到 \(k=10\),\(|\Sigma|=4\),故本质不同的子串个数只有 \(4^{10}\) 种,可以直接压位存下来. 时间复杂度 ...

  9. [ASE][Daily Scrum]11.26

    今天主要是修复一些历史遗留问题以及bug, 在task上进展不是很明显, 在地图与客户端同步之后产生了一些bug,例如一发子弹会消掉很多砖块,服务器地图与本地地图不同步等等... 目前的大方向分工是这 ...

  10. 2015 11 26 java 配置环境变量

    使用java软件, 须进行改变配置环境变量.需要2步. 第一,在电脑中找到配置环境变量的位置: 我的电脑,属性,高级,环境变量. 第二,进行添加两个变量,更改一个变量: 1,变量名:JAVA_HOME ...

随机推荐

  1. Mac Vue-cli脚手架搭建

    安装node环境 官网地址:http://nodejs.cn/download/ 我选择版本:v16.16.0 修改npm镜像地址 # 查看镜像地址 npm config get registry # ...

  2. Java 面向对象编程之接口

    什么是接口? 是抽象方法的集合,接口通常以interface来声明,一个类通过继承接口的方式,从而来继承接口的抽象方法 语法 interface 名称 [extends 其他的接⼝名] { // 声明 ...

  3. 前端:如何让background背景图片进行CSS自适应

    在设置login背景时,找到了一张这样的图片: 但是设置成login背景时,如果没有做一些css适应设置,图片就变样了,变成了这样: 严重变形了,这就造成了一种理想与现实的差距. 若想解决这个自适应问 ...

  4. Java-泛型,枚举,注解

    1 泛型类 package demo; public class FanXingLei { public static void main(String[] args) { // TODO 自动生成的 ...

  5. 推荐一款功能强大、界面优美的开源SSH跨平台终端软件WindTerm

    WindTerm是一款开源免费且功能强大的终端软件,相比 MobaXterm自带中文支持.无论是在Windows.macOS还是Linux操作系统上,WindTerm都能提供出色的性能和稳定性.Win ...

  6. webpack4.15.1 学习笔记(八) — 缓存(Caching)

    目录 输出文件名(Output Filenames) 缓存第三方库 将 js 文件放到一个文件夹中 webpack 打包模块化后的应用程序,会生成一个可部署的 /dist目录,只要 /dist 目录中 ...

  7. django如何将查询结果的栏位和数值自动遍历出来

    在Django中,MT003HModel.objects.all() 返回的是一个 QuerySet 对象,你可以使用迭代器来遍历其中的每个对象,然后访问对象的属性来获取栏位和数值. 以下是一个简单的 ...

  8. [oeasy]python0007_ print函数_字符串_display_电传打字机_程序员的浪漫

    你好世界 回忆上次内容 上次 想输出 Hello world! 据说是程序猿的浪漫   键盘按键 作用 ↑ 上一条指令 ↓ 下一条指令 ← 光标 向左移动 一格 → 光标 向右移动 一格 ctrl + ...

  9. oeasy 教您玩转 linux 之 010302 火狐浏览器 firefox

    我们来回顾一下 上一部分我们都讲了什么? oneko xeyes 这次看看这个火狐 火狐 看看当前版本 看看是否可以更新 如果需要更新就更新    firefox -v    apt search f ...

  10. 对于同一个项目,同时将其git到GitHub和Gitee

    对于同一个项目,你可以同时将其git到GitHub和Gitee.这通常通过配置多个远程仓库地址来实现.以下是一步步的操作指南: 一.在GitHub和Gitee上创建仓库 GitHub: 登录GitHu ...