问题 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. 使用FastReport报表动态更新人员签名图片

    在一些报表模块中,需要我们根据用户操作的名称,来动态根据人员姓名,更新报表的签名图片,也就是电子手写签名效果,本篇随笔介绍一下使用FastReport报表动态更新人员签名图片. 1.设计FastRep ...

  2. Vue源码剖析

    目录 Vue 响应式数据 Vue 中如何进行依赖收集 Vue 中模板编译原理 Vue 生命周期钩子 Vue 组件 data 为什么必须是个函数? nextTick 原理 set 方法实现原理 虚拟 d ...

  3. vscode element-plus/lib/theme-chalk/index.css报错路径找不到

    vscode  element-plus/lib/theme-chalk/index.css报错路径找不到 import { createApp } from 'vue' import './styl ...

  4. NAS使用

    openwrt下的samba设置 - 百度文库 (baidu.com) openwrt下 samba设置 (wjhsh.net) opkg updateopkg install shadow-user ...

  5. Java JVM——13. 垃圾回收相关算法

    1.生存还是死亡? 在堆里存放着几乎所有的 Java 对象实例,在 GC 执行垃圾回收之前,首先需要区分出内存中哪些是存活对象,哪些是已经死亡的对象.只有被标记为己经死亡的对象,GC 才会在执行垃圾回 ...

  6. 配置docker镜像时碰到的问题

    在配置docker镜像时,首先我是这样操作的 , echo "registry-mirrors": ["https://ry1ei7ga.mirror.aliyuncs. ...

  7. 人工智能时代,前端全栈成就独立开发工程师 next.js 开发实战

    next  可以服务端渲染,可以客户端渲染,让前端同事更有性价比,让我们做得可以更多 由于next.js 是基础于react 所以在正式学习next.js 之前我们了解一下react 什么叫模块 ,就 ...

  8. 我用Awesome-Graphs看论文:解读X-Stream

    X-Stream论文:<X-Stream: Edge-centric Graph Processing using Streaming Partitions> 前面通过文章<论文图谱 ...

  9. wordpress站点转移

    title: wordpress站点转移 date: 2024/7/13 11:11:11 tag: linux学习 categories: wordpress建设 description: 搭建后的 ...

  10. 如何在anaconda环境中安装cuda.h和cuda_runtime.h

    在前面的文章(几年前的文章)中我们介绍了在anaconda中安装cuda.cudnn后,有介绍了如何在anaconda中安装nvcc.nccl等NVIDIA的各种编译器和库,本文介绍如何在anacon ...