博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVA - 129 Krypton Factor
阅读量:3904 次
发布时间:2019-05-23

本文共 457 字,大约阅读时间需要 1 分钟。

题意:一个字符串,若包含两个连续的相同子串,则为容易的串,如“ABCDBCDE”,否则称为困难的串,给定n和L,输出由前L个大写字母组成的字典序第n小的困难的串。

思路:

dfs,每当枚举的字符串是一个复杂字符串时,进入下一个dfs,直到dfs层数到了n时,输出字符串。

判断是否为困难字符串的方法,因为dfs的上一个字符串一定为复杂字符串,所以,只需要判断它的后缀字符串是否与相邻的相等即可。

代码如下:

#include 
#include
#include
#include
using namespace std;const int maxn=1e6+5;int n,l;int ans[maxn];int f;int cnt;int len;void dfs (int num){ cnt++; if(cnt==n+1) { int k=0,x=0; for (int i=0;i

 

转载地址:http://cwoen.baihongyu.com/

你可能感兴趣的文章
Windows 7 虚拟串口 VSPD 6
查看>>
Matlab图像处理小结
查看>>
【ROS】Learning tf教程各部分结果
查看>>
ROS资源
查看>>
安装ARBOTIX SIMULATOR
查看>>
Python初学者
查看>>
Python初学者(续1)
查看>>
Python初学者(续2)
查看>>
ROS下实现timed_out_and_back功能
查看>>
四元数与旋转
查看>>
ROS 学习系列 -- RViz中移动机器人来学习 URDF,TF,base_link, map,odom和odom 主题的关系
查看>>
OpenCV图像的轮廓的匹配
查看>>
9个优秀网上免费标签云生成工具
查看>>
机器人局部避障的动态窗口法(dynamic window approach)
查看>>
Ros中2D_Slam说明: turtlebot+kinect改写成turtlebot+laser(hokuyo)
查看>>
卡尔曼滤波 -- 从推导到应用(一)
查看>>
卡尔曼滤波 -- 从推导到应用(二)
查看>>
卡尔曼滤波的原理说明
查看>>
先验概率与后验概率及贝叶斯公式
查看>>
ROS下订阅/cmd_vel节点
查看>>