(大模拟紫题) Luogu P1953 易语言

原题链接:P1953 易语言
(我最近怎么总在做大模拟大搜索题)
分别处理两种情况。
如果只有一个1或0
直接设一个cnt为这个值,每次输入一个新名字之后把数字替换成cnt,最后cnt++即可。
注意数字可能不止一位,输出一次cnt之后可以整一个bool变量阻止以后的输出。
如果是要改名
把名称和后缀分别存起来,扫一遍名称找出初始数字,赋给cnt。
同样,初始数字可能不止一位,要每次乘10加n。
然后不用管输入的是啥,每有一个输入输出一遍初始名称,数字部分替换成cnt即可。然后输出第二个名称时检测到小数点(误)直接输出后缀名之后break。每次循环后cnt++。
然后就WA掉20分
如果数字在后缀名末尾,这样会直接把第二个名称中的数字break掉。这时候之前整的那个bool变量就可以用了。如果数字输出没被阻止(即还没输出过数字),直接输出一次cnt就行。
源码:
//MiserWeyte is now "mzWyt"
#include <bits/stdc++.h>
using namespace std;
string opt1, opt2;
string name1, name2;
int main(){
cin >> opt1;
if(opt1[0] == '0' || opt1[0] == '1'){ // 只更换序号
int cnt = opt1[0] - '0';
while(cin >> name1 >> name2){
bool notend;
notend = true;
for(int i=0; i<name1.length(); i++){ // 输入文件文件名
if(name1[i]>='0' && name1[i] <= '9'){ // 把数字部分替换为cnt
if(notend){ // 防止数字部分有多位,只在第一位时输出一次
cout << cnt;
notend = false;
}
}
else cout << name1[i];
}
cout << ' ';
notend = true;
for(int i=0; i<name2.length(); i++){ //输出文件文件名同上
if(name2[i]>='0' && name2[i] <= '9'){
if(notend){
cout << cnt;
notend = false;
}
}
else cout << name2[i];
}
cout << '\n';
cnt ++;
}
}
else{ // 更换名称
cin >> opt2;
int cnt = 0;
for(int i=0; i<opt1.length(); i++){ // 防止初始数字有多位
if(opt1[i] >= '0' && opt1[i] <= '9'){
cnt *= 10;
cnt += opt1[i] - '0';
}
}
while(cin >> name1 >> name2){
bool notend;
notend = true;
for(int i=0; i<opt1.length(); i++){ // 同只改数字的代码,只不过每次以opt1为模板
if(opt1[i] >= '0' && opt1[i] <= '9'){
if(notend){
cout << cnt;
notend = false;
}
}
else cout << opt1[i];
}
cout << ' ';
notend = true;
for(int i=0; i<opt1.length(); i++){ //输出文件文件名
if(opt1[i] >= '0' && opt1[i] <= '9'){
if(notend){
cout << cnt;
notend = false;
}
}
else{
cout << opt1[i];
if(opt1[i] == '.'){ // 点后面的直接替换成指定后缀
cout << opt2;
break;
}
}
}
if(notend) cout << cnt; // 若还没输出过数字,则数字在后缀名后方,输出一次
cout << '\n';
cnt ++;
}
}
return 0;
}
(大模拟紫题) Luogu P1953 易语言的更多相关文章
- 易语言5.6 精简破解版[Ctoo]
说明:本易语言5.6破解版 加入了[E剑终情]大神制作的完美通杀补丁,本人还修复了静态编译的问题. 关于静态编译失效的问题,大家解压之后会看到易语言根目录有一个"易言语静态编译配置工具&qu ...
- HDU 5920 Ugly Problem 高精度减法大模拟 ---2016CCPC长春区域现场赛
题目链接 题意:给定一个很大的数,把他们分为数个回文数的和,分的个数不超过50个,输出个数并输出每个数,special judge. 题解:现场赛的时候很快想出来了思路,把这个数从中间分为两部分,当位 ...
- python3+django2 开发易语言网络验证(中)
第四步:网络验证的逻辑开发 1.将model注册到adminx.py中 1.在apps/yanzheng目录下新建admin.py 文件,添加代码: import xadmin from xadmin ...
- 大整数加减运算的C语言实现
目录 大整数加减运算的C语言实现 一. 问题提出 二. 代码实现 三. 效果验证 大整数加减运算的C语言实现 标签: 大整数加减 C 一. 问题提出 培训老师给出一个题目:用C语言实现一个大整数计算器 ...
- 执行效率做比较,Go、python、java、c#、delphi、易语言等
比较环境,在win7 64位,比较各种语言的整数型运算,下面的比较只作为单项比较.具体方式,40000*40000遍历相加.为了防止编译器优化,生成一个随机数. 1:c#,在NET2.0框架下作为 ...
- Atitit. 真正的全中国文字attilax易语言的特点以及范例
Atitit. 真正的全中国文字attilax易语言的特点以及范例 1. 前言 attilax易语言是什么??1 2. attilax易语言的特点2 2.1. 支持多语言文字,不只汉字,还有藏文,维文 ...
- Bzoj1972: [Sdoi2010]猪国杀 题解(大模拟+耐心+细心)
猪国杀 - 可读版本 https://mubu.com/doc/2707815814591da4 题目可真长,读题都要一个小时. 这道题很多人都说不可做,耗时间,代码量大,于是,本着不做死就不会死的精 ...
- 易语言 史诗级Json处理 烁_Json模块!!!!
大家好,我是键盘上的魔手 * “************************”* “** 欢迎使用烁Json模块 **”* “** 作者:键盘上的魔手 **”* “** 微信号:codervip ...
- X86逆向6:易语言程序的DIY
易语言程序在中国的用户量还是很大的,广泛用于外挂的开发,和一些小工具的编写,今天我们就来看下如何给易语言程序DIY,这里是用的易语言演示,当然这门技术也是可以应用到任何一门编译型语言中的,只要掌握合适 ...
随机推荐
- 基于公共子序列的轨迹聚类(c#)
前言 如今的世界中,想要研究人们的出行活动,可以利用智能手机或智能手环等个人设备生成的 GPS 数据进行研究.而在众多的研究方向中,出行的热点路线或者说经常出行的路线也比较受欢迎.采用热力图的方式对其 ...
- 【MySQL】java.sql.SQLException: The server time zone value
错误:Could not open JDBC Connection for transaction; nested exception is java.sql.SQLException: The se ...
- winsock完成端口套接字重用注意事项
刚申请到博客,第一篇随笔(๑•̀ㅂ•́)و✧ 关于DisconnectEx的一个问题,目前主要发现在windows10中出现了这个问题,winserver2008 win7都没有这个问题. 被Disc ...
- Flyway 助力数据库脚本自动化管理攻略
原文地址:梁桂钊的博客 博客地址:http://blog.720ui.com 欢迎关注公众号:「服务端思维」.一群同频者,一起成长,一起精进,打破认知的局限性. 今天,探讨一个有趣的话题:我们可以通过 ...
- POJ 3295 Tautology(构造法)
题目网址:http://poj.org/problem?id=3295 题目: Tautology Time Limit: 1000MS Memory Limit: 65536K Total Su ...
- Elastic Stack 简介
一.ElasticSearch ElasticSearch 是一个基于 Apache Lucene 的开源搜索引擎.它通过RESTful API 来隐藏Lucene的复杂性,从而让全文搜索变得简单.不 ...
- 13.多级代理下Nginx透传真实IP
1.基于代理(七层负载均衡)情况下 透传客户端的真实IP 环境: 10.0.0.5 proxy_node1 一级代理 10.0.0.6 proxy_node2 二级代理 10.0.0.7 proxy_ ...
- linux文档、目录相关
linux中常用文档的目录规则: /var 存放经常变化的文件 /home 普通用户家目录 /home/xiaoliu 小刘同学的用户家目录 /etc 存放配置文件的目录 /etc/my.cnf my ...
- 云计算 docker 容器使用命令
docker 使用命令: docker version 查看docker版本号 vi /etc/docker/daemon.json { "registry-mirrors": [ ...
- 百万年薪python之路 -- MySQL数据库之 永久修改字符串编码 与 忘了密码和修改密码
永久修改字符集编码的方法: 在mysql安装目录下创建一个my.ini(Windows下)文件,写入下面的配置,然后重启服务端. [client] #设置mysql客户端默认字符集 default-c ...