(大模拟紫题) 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,这里是用的易语言演示,当然这门技术也是可以应用到任何一门编译型语言中的,只要掌握合适 ...
随机推荐
- 小程序webview调用微信扫一扫的“曲折”思路
自上一篇遇到webview中没有返回按钮之后,虽然跳出坑了.解决方案:<小程序webview跳转页面后没有返回按钮完美解决方案> 但是,小程序踩坑之路并没有结束.在公众号网页中通过配置AP ...
- Swoole4-swoole创建Mysql连接池
一 .什么是mysql连接池 场景:每秒同时有1000个并发,但是这个mysql同时只能处理400个连接,mysql会宕机. 解决方案:连接池,这个连接池建立了200个和mysql的连接,这1000个 ...
- 最简单的ArcGIS Engine应用程序(中)
上一篇中只能添加代码中指定的shp文件(最简单的ArcGIS Engine应用程序(上)) 为了让用户可以浏览磁盘加载指定的shp文件,需做一下调整. 从工具箱往窗体上添加一个OpenFileDial ...
- AWVS安全渗透扫描
1.打开软件,点击New Scan 2.在website url中输入被扫描的网址,点击next 3.在scanning profile中选择测试的漏洞类型,默认选择default(默认) 在scan ...
- 零基础转行web前端,要学习多久?需要掌握些什么?
web前端开发技术人才越来越吃香,而且web前端领域划分越来越细,对技术的需求越来越高,想学习web前端的人也是越来越多.那么,如何学习web前端知识?从哪开始?转型成为web前端工程师需要学些什么? ...
- PHP 插入排序 -- 折半查找
1. 折半查找 -- Binary Insertion Sort 时间复杂度 : O(n^2) 适用条件 : 相对直接插入排序,减少了数值的比较次数.适用于需要排序的数码比较少的情况. <?p ...
- Android 使用appcompat_v7包以及源码注意事项
最近学习和实践Android,无数次被AS和gradle惨痛的折磨,于是决定坚守Eclipse阵地..真是无奈之举,AS和gradle对我而言就像win10一样不讨喜. 当然Eclipse中开发and ...
- Ceph Paxos相关代码解析
Leader选举 Ceph中的leader选举是一个Paxos Lease过程,与BasicPaxos的目的不同.后者用于解决数据一致性问题,而Paxos Lease是为了选举出一个leader承担m ...
- css 动画animation基本属性(干货)
/* 动画名称 */ animation-name: cloud; /* 属性定义动画完成一个周期所需要的时间,以秒或毫秒计 */ animation-duration:1s; /* 属性定义动画何时 ...
- POJ 3020 Antenna Placement(二分图 匈牙利算法)
题目网址: http://poj.org/problem?id=3020 题意: 用椭圆形去覆盖给出所有环(即图上的小圆点),有两种类型的椭圆形,左右朝向和上下朝向的,一个椭圆形最多可以覆盖相邻的两 ...