P1098 字符串的展开

规则有点多吧;

isdigit(char) 表示如果字符是数字返回一,否则返回0;

倒序做一个下标就行了;

巧用三目运算符避开分类讨论,避开开头和结尾,根据条件层层逼近;

#include<cstring>
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
const int maxn=;
char s[maxn],ans[maxn];
int pos;
int p1,p2,p3; int main()
{
scanf("%d%d%d",&p1,&p2,&p3);
scanf("%s",s);
int len=strlen(s);
ans[pos++]=s[];
for(int i=;i<len-;i++)
{
if(s[i]=='-'&&s[i-]!='-')
{
if((isdigit(s[i-])!=isdigit(s[i+]))||s[i-]>=s[i+]) {ans[pos++]=s[i];continue;}
int qw=s[i+]-s[i-]-;
for(int j=;j<=qw;j++)
{
int now=(p3==?j:qw-j+);
for(int k=;k<=p2;k++)
{
if(p1==) ans[pos++]='*';
else ans[pos++]=s[i-]+now-(!isdigit(s[i-])&&p1==?:);
}
}
}
else ans[pos++]=s[i];
}
ans[pos]=s[len-];
cout<<ans;
return ;
}

P1098 字符串的展开——细节决定成败的更多相关文章

  1. 洛谷P1098 字符串的展开

    P1098 字符串的展开 题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输 ...

  2. 洛谷——P1098 字符串的展开

    P1098 字符串的展开 题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输 ...

  3. P1098 字符串的展开

    P1098 字符串的展开 刷新三观的模拟题 题意描述 太长了自己去看吧. 算法分析 模拟题分析你*呀! 写这篇题解的唯一原因是:三目运算符用的好的话,可以让百行大模拟变成30行水题. 代码实现 #in ...

  4. 洛谷P1098 字符串的展开【字符串】【模拟】

    题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输出时,用连续递增的字母或数 ...

  5. 洛谷 P1098 字符串的展开

    题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输出时,用连续递增的字母或数 ...

  6. 洛谷—— P1098 字符串的展开

    https://www.luogu.org/problem/show?pid=1098 题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类 ...

  7. [NOIP2007] 提高组 洛谷P1098 字符串的展开

    题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输出时,用连续递增的字母获数 ...

  8. Luogu P1098 字符串的展开

    这几天划了划水看了看初赛的试题,没写什么随笔. 今天刷刷洛谷试炼场.(不要问为什么我还在普及区) 题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串 ...

  9. (Java实现) 洛谷 P1098 字符串的展开

    import java.util.ArrayList; import java.util.Scanner; public class zifuchuandezhankai { static Array ...

随机推荐

  1. 阿里云OSS上传文件本地调试跨域问题解决

    问题描述: 最近后台说为了提高上传效率,要前端直接上传文件到阿里云,而不经过后台.因为在阿里云服务器设置的允许源(region)为某个固定的域名下的源(例如*.cheche.com),直接在本地访问会 ...

  2. src属性与浏览器渲染

    img标签 只要设置了src属性, 就会开始下载,因此可以使用这个特性,配合display:none,默默的下载一些图片,用的时候直接用,快了那么一丢丢~ 注意:不一定要添加到文档后才会开始下载,是只 ...

  3. 原子性atomic/nonatomic

    原子性:并发编程中确保其操作具备整体性,系统其它部分无法观察到中间步骤,只能看到操作前后的结果. 决定编译器生成的getter和setter是否原子(natomic)操作.   i 因此,atomic ...

  4. web中cookie和session_转

    转自:Python爬虫番外篇之Cookie和Session  python修行路 关于cookie和session估计很多程序员面试的时候都会被问到,这两个概念在写web以及爬虫中都会涉及,并且两者可 ...

  5. [nginx] nginx源码分析--监控检测模块

    描述 HTTP监控检查,是nginx官网推荐使用的第三方模块 https://www.nginx.com/resources/wiki/modules/healthcheck/ https://git ...

  6. Linux命令——watch

    参考:Linux watch Command Tutorial for Beginners (5 Examples) 前言 有的时候我们想重复执行某一命令,通过该命令的输出进而获知系统某些信息.wat ...

  7. (Linux基础学习)第五章:Linux中的screen应用

    第1节:安装screen1.加载系统镜像文件,因为screen的安装包在系统镜像文件中图001 2.列出系统上所有的磁盘[root@centos6 ~]# lsblk图002 3.安装screen应用 ...

  8. generator 和yeild

    参考 https://www.cnblogs.com/xybaby/p/6322376.html 使用yield那么该函数就变成了一个生成器方法. def zheng(n,m): if n<m: ...

  9. mq引入以后的缺点

    系统可用性降低? 一旦mq不能使用以后,系统A不能发送消息到mq,系统BCD无法从mq中获取到消息.整个系统就崩溃了. 如何解决: 系统复杂程度增加? 加入mq以后,mq引入来的问题很多,然后导致系统 ...

  10. c-free gcc.exe: cannot specify -o with -c or -S and multiple compilations的解决方法

    win10上打算使用c-free,因为xp win7时代都用过,写c代码还是比较方便的,尤其是5.0版本,但是在win10上面,c-free 5.0版本没有c-free 4好用,c-free 4启动更 ...