Bobo String Construction
登录—专业IT笔试面试备考平台_牛客网
题目大意:给出一字符串t,求一个长为n的字符串,使t+s+t中包含且仅包含两个t
1<=n<=1000;测试样例组数<=1000
思路:一开始很容易想到如果t里有1,s就全0,否则s就全1,但当t=a+n*0/n*1+a这样时,例如001000001,110111110,n=3,这时s就对应的不能等于全0/全1,但至少有一种可以,也就是对于前者我们可以选111,对于后者选000,所以我们全0或全1都试一下,用kmp分别检验是否合法,都不合法就输出-1(但经测试其实没有-1的情况)
#include<bits/stdc++.h>
#define P pair<int,char>
using namespace std;
const int N = 1e3 + 5;
char str[N], pattern[N];
int fail[N];
int a[N];
int n;
string t,s="";
void getfail(string p, int plen)
{//取得p的失配指针fail[0] = 0, fail[1] = 0;for (int i = 1; i < plen; i++){int j = fail[i];while (j && p[i] != p[j]){j = fail[j];}fail[i + 1] = p[i] == p[j] ? j + 1 : 0;}
}
int kmp(string s, string p)
{//求s的子串中有多少个pint cnt = 0;//记录答案int last = -1;//记录上一次匹配的位置int slen = s.size(), plen = p.size();getfail(p, plen);int j = 0;for (int i = 0; i < slen; i++){while (j && s[i] != p[j]){j = fail[j];}if (s[i] == p[j]){j++;}if (j == plen){cnt++;last = i;}}return cnt;
}
bool check()
{string temp = t + s + t;if(kmp(temp,t)>2){return false;}return true;
}
int main()
{cin.tie(0);cout.tie(0);ios::sync_with_stdio(false);int T;cin>>T;while(T--){cin>>n;cin>>t;s="";for(int i=0;i<n;i++){s+="0";}if(check()){//全0试试cout<<s<<endl;continue;}s="";for(int i=0;i<n;i++){s+="1";}if(check()){//全1试试cout<<s<<endl;continue;}//cout<<"-1"<<endl;}return 0;
}
相关文章:
Bobo String Construction
登录—专业IT笔试面试备考平台_牛客网 题目大意:给出一字符串t,求一个长为n的字符串,使tst中包含且仅包含两个t 1<n<1000;测试样例组数<1000 思路:一开始很容易想到如果t里有1,s就全0,否则s就全…...
基于java在线个人网站源码设计与实现
摘 要 随着社会及个人社交应用平台的飞速发展,人们的沟通成本逐渐降低,互联网信息的普及也进一步提升了人们对于信息的需求度,通过建立个人网站的方式来展示自己的生活信息同时利用平台结交新的朋友,借助个人网站平台的搭建不仅可…...

Ubuntu18.04下编译qgc源码
写在前面 在下载前必须说明,根据你的qgc源码版本进行下载,有的源码必须要求Qt是5.15版本以上。 个人所使用开发软件 版本QT5.12.9qgc源码V4.0Ubuntu18.04 QT下载 (1)我们可以去官网下载官网下载地址具体的下载方法这里不用多说&a…...
Ros2_windows_install的学习笔记
Ros2_windows_install安装 Iron安装 iex ((New-Object System.Net.WebClient).DownloadString(https://raw.githubusercontent.com/scottcandy34/ros2_windows_install/main/ros2_iron.ps1))启动Iron C:\dev\ros2_iron\local_setup.bat...

5、Kubernetes核心技术 - Controller控制器工作负载
目录 一、Deployments - 控制器应用 二、Deployment升级回滚和弹性收缩 2.1、创建一个 1.14 版本的 pod 2.2、应用升级 2.3、查看升级状态 2.4、查看历史版本 2.5、应用回滚 2.6、弹性伸缩 三、StatefulSet - 有状态应用 四、DaemonSet - 守护进程 五、Job - 单次任…...
【java设计模式】创建型模式介绍(工厂模式、抽象工厂模式、单例模式、建造者模式、原型模式)
文章目录 简介一、工厂模式介绍案例 二、抽象工厂模式介绍案例 三、单例模式介绍案例 四、建造者模式介绍案例 五、原型模式介绍案例 简介 本文介绍Java设计模式中创建型模式的五种 一、工厂模式 工厂模式(Factory Pattern)是 Java 中最常用的设计模式…...

Redis系列:Redis 的事务机制
1 复习下何为事务机制? Transaction(事务)是计算机的特有术语,它一般指单个逻辑工作单位,由一系列的操作组合而成,在这些操作执行的时候,要么都执行成功,要么都不执行,防…...

动静态网页、Django创建表关系、Django框架的请求生命周期流程图
一、request对象的几个方法 在视图函数中写方法的时候,都会有一个形参requestdef index(request):passrequest.method # GET POST request.GET.get() # 它获取最后一个元素值 request.GET.getlist() # 获取到所有的request.POST.get() # 它获取最后一个元素值 req…...

神经网络的初始化方法
文章目录 1、随机初始化2、Xavier初始化3、He初始化4、权重预训练初始化5、零初始化 对于神经网络的训练过程中,合适的参数初始化方法有助于更好的处理梯度消失和梯度爆炸问题。通常有以下几种初始化方法: 1、随机初始化 随机初始化(Random…...

【SQL Server】DBCC CHECKDB只是一个数据库维护命令吗?
日期:2023年7月27日 作者:Commas 签名:(ง •_•)ง 积跬步以致千里,积小流以成江海…… 注释:如果您觉得有所帮助,帮忙点个赞,也可以关注我,我们一起成长;如果有不对的地方…...

三、Web安全相关知识
请勿用于非法用途 文章目录 一、Web源码框架二、目录结构1、静态资源2、WEB-INF(1)classes(2)lib(3)web.xml 二、web脚本语言1、脚本种类(1)ASP(2)ASP.NET&am…...

Android系统服务之AMS
目录 概述 重点和难点问题 启动方式 main入口: run方法: BootstrapSevices 小结: 与其他线程的通信原理 参考文档: 概述 AMS是Android系统主要负责四大组件的启动,切换,调度以及应用程序进程管理和调度等工…...
Unity UGUI的EventTrigger (事件监听器)组件的介绍及使用
Unity UGUI的EventTrigger (事件监听器)组件的介绍及使用 1. 什么是EventTrigger组件? EventTrigger是Unity UGUI中的一个组件,用于监听和响应UI元素的各种事件,例如点击、拖拽、进入、离开等。通过EventTrigger组件,我们可以方…...

Matlab的SimuLink对FS32K144编程--内部数据存储Flash
前言 Flah擦写是由寿命的,应当减免无效的擦写,如数据值不变不进行擦写 1、新建工程完成后,拖出Flash的存储控制初始化…...

【MySQL】centos 7下MySQL的环境搭建
从本期博客开始我们正式进入到数据库的学习,在学习数据库时所用到的工具是Linux环境下的MySQL 目录 一、检查环境中是否装有MySQL 二、获取MySQL官方yum源 三、配置MySQL官方yum源 四、一键安装MySQL 五、启动mysql服务 六、登录MySQL 七、修改mysql配置文件…...

【SpringCloud Alibaba】(四)使用 Feign 实现服务调用的负载均衡
在上一文中,我们实现了服务的自动注册与发现功能。但是还存在一个很明显的问题:如果用户微服务和商品微服务在服务器上部署多份的话,之前的程序无法实现服务调用的负载均衡功能。 本文就带着大家一起实现服务调用的负载均衡功能 1. 负载均衡…...

ShardingSphere-Proxy水平分片详解与实战
🚀 ShardingSphere 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜&…...
PTA 1052 Linked List Sorting
个人学习记录,代码难免不尽人意。 A linked list consists of a series of structures, which are not necessarily adjacent in memory. We assume that each structure contains an integer key and a Next pointer to the next structure. Now given a linked li…...

五,Eureka 第五章
5.3.2 修改pom添加依赖 <dependencies><!--公共部门--><dependency><groupId>cn.bdqn</groupId><artifactId>springcloud-api-commons</artifactId><version>${project.version}</version></dependency><!--e…...
yolov5目标框的融合(两个或多个框)
框的融合 1.多个框的融合 方法一: import os import numpy as np import glob import cv2 from PIL import Image,ImageFont,ImageDraw import randomCOLORS = np.random.uniform(0, 255, size=...
KubeSphere 容器平台高可用:环境搭建与可视化操作指南
Linux_k8s篇 欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神! 题目:KubeSphere 容器平台高可用:环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...

el-switch文字内置
el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...
C++.OpenGL (10/64)基础光照(Basic Lighting)
基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)
UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中,UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化…...
代码随想录刷题day30
1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

20个超级好用的 CSS 动画库
分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...

并发编程 - go版
1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...