H. Fake News (medium)

题意

以前是给出 S T 串,问在 S 中有多少个子串为 T 的个数,子串可以不连续,保持位置相对一致。

现在给出 n ,要你构造 S T 串。

分析

这种 special judge 的题目也是清奇。

设 S 为文本串,p 为模式串,设 S = p + u,初始设 p = "a",u 为空串,那么初始 S 串中匹配到的数量 k = 1,

  1. 1 -> 2 ,设 z 为未出现过的字母,那么 p = p + z ,u = u + z,S = pzz(u 从空串变成 z),
  2. k -> 2k+1,那么 p = p + z,u = u + z + z,后面的 uzz 对应 2k,加上前面的 pz 对应 1,
  3. k -> 2k+2,p = p + z,u = z + u + z + z,那么 S = pzzuzz 。

code

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXN = 1e5 + 10;
string p, u;
char c;
void so(int n) {
if(n == 1) {
p = "";
c = 'a';
p += c;
u = "";
c++;
} else if(n == 2) {
so(n / 2);
p = p + c;
u = u + c;
c++;
} else {
if(n & 1) {
so((n - 1) / 2);
p = p + c;
u = u + c + c;
c++;
} else {
so((n - 2) / 2);
p = p + c;
string c_;
c_ += c;
u = c_ + u + c + c;
c++;
}
}
}
int main() {
int n;
while(cin >> n) {
so(n);
cout << p + u << " " << p << endl;
}
return 0;
}

H. Fake News (medium)的更多相关文章

  1. Codeforces 802 补题

    codeforces802 A-O Helvetic Coding Contest 2017 online mirror A  Heidi and Library (easy) 水题 同B #incl ...

  2. Brain Network (medium)(DFS)

    H - Brain Network (medium) Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d &am ...

  3. Detailed Information for Outputted Files from Somatic Mutation Annotators(annovar 注释文件条目详细解释)

    CONTENTS *_annoTable.txt (ANNOVAR) *_annoTable.txt (SnpEff) *_genelist.txt (ANNOVAR & SnpEff) db ...

  4. Swift LeetCode 目录 | Catalog

    请点击页面左上角 -> Fork me on Github 或直接访问本项目Github地址:LeetCode Solution by Swift    说明:题目中含有$符号则为付费题目. 如 ...

  5. OpenTelemetry-可观察性的新时代

    有幸在2019KubeCon上海站听到Steve Flanders关于OpenTelemetry的演讲,之前Ops领域两个网红项目OpenTracing和OpenCensus终于走到了一起,可观察性统 ...

  6. fake gucci outlet perform a couple associated with things in great trust

    Based on my a lot of years of encounter within Taobao, purchase bags must go to the high reputation ...

  7. x264 - 高品质 H.264 编码器

    转自:http://www.5i01.cn/topicdetail.php?f=510&t=3735840&r=18&last=48592660 H.264 / MPEG-4 ...

  8. 转:MediaCoder H.264格式编码参数设置及详解

    转: http://mediacoder.com.cn/node/81 由于现在大部分视频转码都选择H.264格式进行编码,同时CUDA编码的画质还达不到x264软编码的质量(如果你对画质无要求,可以 ...

  9. stm32f10x.h文件分析理解

    今天再看过半年前自己写的这篇发现自己当时理解有误,stm32f10x.h与库开发并未存在太大关系,只是一个最为重要的寄存器地址到寄存器结构体变量的映射. stm32f10x.h 这个头文件是STM32 ...

随机推荐

  1. 【APUE】Chapter12 Thread Control

    今天看了APUE的Chapter12 Thread Control的内容,记录一下看书的心得与示例code. 这一章的内容是对Chapter11 Threads(见上一篇日志)的补充,大部分内容都是理 ...

  2. leetcode_day02

    任务二:删除排序数组中的重复项 原文链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/ 最开始的解决思路: ...

  3. OpenCV_1.0安装包下载

    OpenCV_1.0安装包下载 点击下载

  4. Eclipse下使用SVN插件从服务器获取工程

    1.打开Eclipse 4.4,在Eclipse里打开SVN资源库窗口:点击菜单window-->show view-->other:然后再弹出窗口展开SVN节点,选择SVN资源库   2 ...

  5. EasyUi DataGrid 请求Url两次问题

    easyui datagrid 1.4 当total为0时,请求两次url问题 框架问题:需要在easyui文件后加修补补丁 /** * The Patch for jQuery EasyUI 1.4 ...

  6. LeetCode(一)

    Q&A ONE Given an array of integers, return indices of the two numbers such that they add up to a ...

  7. 积累: .net里有个线程安全的int+1类

     Interlocked.Increment(ref id); 

  8. VB.NET概述

    简介 Visual Basic .NET属Basic系语言,VB.NET是一门高级的编程语言,当然在Basic系语言中VB.NET也确实是迄今为止最强大的一门编程语言.Visual Basic .NE ...

  9. (总结)Nginx使用的php-fpm的两种进程管理方式及优化

    PS:前段时间配置php-fpm的时候,无意中发现原来它还有两种进程管理方式.与Apache类似,它的进程数也是可以根据设置分为动态和静态的. php-fpm目前主要又两个分支,分别对应于php-5. ...

  10. iOS runLoop 理解

    目录 概述 run loop modes 一.概述 run loop叫事件处理循环,就是循环地接受各种各样的事件.run loop是oc用来管理线程里异步事件的工具.一个线程通过run loop可以监 ...