问题 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. 详解C#委托与事件

    在C#中,委托是一种引用类型的数据类型,允许我们封装方法的引用.通过使用委托,我们可以将方法作为参数传递给其他方法,或者将多个方法组合在一起,从而实现更灵活的编程模式.委托类似于函数指针,但提供了类型 ...

  2. 写了一个json小工具,希望大家体验(Mac平台)

    用rust写了一个json小工具"JSON PICKER",欢迎大家试用: https://github.com/davelet/json-picker/releases/tag/ ...

  3. oeasy教您玩转vim - 19 - 使用标记

    使用标记 回忆上节课内容 跳转到行号 200G 设置行号选项 显示行号 :se nu 显示相对行号 :se rnu 如何用命令行跳转 :100 但是我如何有的时候记不住到底跳到多少行 能否做个标记留个 ...

  4. oeasy教您玩转vim - 54 - # 匹配替换

    ​ 查找细节 回忆上节课内容 我们学习了 替换 substitude 替换单行 :s/shiyanlou/oeasy 加上range :3,5s/shiyanlou/oeasy :%s/shiyanl ...

  5. php 开发规范

    ===========================框架========================= · 使用laravel框架,原因:tp的框架路由和orm没有laravel好用 · 使用强 ...

  6. argparse学习笔记

    argparse是 Python 的一个内置模块,用于编写用户友好的命令行接口.使用 argparse,你可以很容易地为 Python 脚本添加参数解析功能,使得脚本可以接受命令行选项和参数.学起来也 ...

  7. 3、Git之常用命令

    3.1.速查表 命令 作用 git config --global user.name 用户名 设置用户签名(昵称) git config --global user.email 邮箱 设置用户签名( ...

  8. 【Mybatis】05 官方文档指北阅读 vol3 配置 其二

    对象工厂(objectFactory)[省略,入门阶段实在不懂] 插件(plugins)[省略,入门阶段实在不懂] 环境配置(environments) MyBatis 可以配置成适应多种环境,这种机 ...

  9. 国产AI模型和美国顶级AI模型的距离在哪?—— 算力?算法?数据?

    前段时间去了长春一汽,聊了Reinforcement Learning方面的工作,既是面试,也是谈了谈意向,最后全部OK,本打算是签合同了,结果HR说要求有三年的社保缴纳证明工作经验,最后说可以减到2 ...

  10. 【转载】 GPU地址空间的相关概念

    为了结合上篇 文章   https://www.cnblogs.com/devilmaycry812839668/p/13264080.html 对RTX显卡是否能够实现P2P通信功能,同时专业级别显 ...