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


import java.util.ArrayList;
import java.util.Scanner;
public class zifuchuandezhankai {
static ArrayList<Integer> list = new ArrayList<Integer>();
public static void main(String[] args) {
char a, b;
int p1, p2, p3,temp=1;
String s,str="",s1="",s2="";;
Scanner sc = new Scanner(System.in);
p1 = sc.nextInt();
p2 = sc.nextInt();
p3 = sc.nextInt();
s = sc.next();
for (int i = 1; i < s.length() - 1; i+=temp) {
temp=1;
if (s.charAt(i) == '-' ) {
a = s.charAt(i - 1);
b = s.charAt(i + 1);
//|| (Character.isDigit(a) && Character.isLetter(b) )
if((a>=65 && b<65 ) || (a<65 && b>=65) || a>=b){
s=s.replaceFirst("-", str);
list.add(i);
continue;
}
if(Character.isLetter(a) && a>=97){
a-=32;
}
if(Character.isLetter(b) && b>=97){
b-=32;
}
if(a==b){
s=s.replaceFirst("-", "");
list.add(i);
continue;
}
for (int j = a+1; j <b; j++) {
//char c = Character.forDigit(j,10);
char c = (char)j;
str=str+c;
}
if(p1==1){
str=str.toLowerCase();
}
else if(p1==2){
str=str.toUpperCase();
}
else{
for (int j = 0; j < str.length(); j++) {
s1=s1+"*";
}
str=s1;
}
for (int j = 0; j < str.length(); j++) {
for (int j2 = 0; j2 < p2; j2++) {
s2=s2+str.charAt(j);
}
}
str=s2;
if(p3==2){
StringBuffer ss = new StringBuffer(str);
ss=ss.reverse();
str =ss.toString();
}
temp=str.length();
s=s.replaceFirst("-", str);
// list.add(str);
// System.out.println(str);
// list.add(str);
//System.out.println(str);
str="";
s1="";
s2="";
}
}
StringBuffer sss = new StringBuffer(s);
for (int j = list.size()-1; j >=0 ; j--) {
sss.insert(list.get(j), "-");
}
//
// sss=sss.substring(0, i)+sss.substring(i+1);
// sss.append(str, i, i);
System.out.println(sss);
}
}
(Java实现) 洛谷 P1098 字符串的展开的更多相关文章
- 洛谷P1098 字符串的展开
P1098 字符串的展开 题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输 ...
- 洛谷——P1098 字符串的展开
P1098 字符串的展开 题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输 ...
- 洛谷P1098 字符串的展开【字符串】【模拟】
题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输出时,用连续递增的字母或数 ...
- 洛谷 P1098 字符串的展开
题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输出时,用连续递增的字母或数 ...
- 洛谷—— P1098 字符串的展开
https://www.luogu.org/problem/show?pid=1098 题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类 ...
- [NOIP2007] 提高组 洛谷P1098 字符串的展开
题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或者“4-8”的字串,我们就把它当作一种简写,输出时,用连续递增的字母获数 ...
- P1098 字符串的展开——细节决定成败
P1098 字符串的展开 规则有点多吧: isdigit(char) 表示如果字符是数字返回一,否则返回0: 倒序做一个下标就行了: 巧用三目运算符避开分类讨论,避开开头和结尾,根据条件层层逼近: # ...
- P1098 字符串的展开
P1098 字符串的展开 刷新三观的模拟题 题意描述 太长了自己去看吧. 算法分析 模拟题分析你*呀! 写这篇题解的唯一原因是:三目运算符用的好的话,可以让百行大模拟变成30行水题. 代码实现 #in ...
- Luogu P1098 字符串的展开
这几天划了划水看了看初赛的试题,没写什么随笔. 今天刷刷洛谷试炼场.(不要问为什么我还在普及区) 题目描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串 ...
随机推荐
- NLTK的安装与简单测试
1.NLTK简介 Natural Language Toolkit,自然语言处理工具包,在NLP领域中,最常使用的一个Python库.NLTK是一个开源的项目,包含:Python模块,数据集和教程,用 ...
- QtCreator MSVC 搭建 Debugger
QtCreatorForWindows搭建Debugger QtCreator for windows选择mingw或者msvc: qt-opensource-windows-x86-msvc2015 ...
- [hihoCoder1236 Scores 2015BeijingOnline]简单粗暴的分块+简单粗暴的bitset
题意:50000个5维向量,50000次询问每一维都不大于某一向量的向量个数,强制在线. 思路:做完这题才知道bitset效率这么高,自己本地测试了下1s可以操作1010个bit,orz简单粗暴 令S ...
- [Selenium] 自动侦测浏览器版本并下载对应的浏览器驱动
昨天在群里聊天时,有同学说 Appium 官方支持自动下载兼容的浏览器驱动,想来Selenium也有类似的方法,于是在网上搜索一番.参考了Medium上一篇文章的方法,对步骤进行改进,增加了对多浏览器 ...
- 在ef core中使用postgres数据库的全文检索功能实战之中文支持
前言 有关通用的postgres数据库全文检索在ef core中的使用方法,参见我的上一篇文章. 本文实践了zhparser中文插件进行全文检索. 准备工作 安装插件,最方便的方法是直接使用安装好插件 ...
- angular js 删除及多条删除
一.编写service //删除 public int delete(Long id); //多条删除 public int deletes(List<Long> id); 二.编写ser ...
- zip压缩文件(二)
普通压缩文件以20M大小的文件为例 public static void main(String[] args) { String source = "F:\\demo\\择天记 第5季 第 ...
- webpack-dev-server简记
webpack -v 3.4.1 npm -v 3.10.10 /////////////////////////////////////// webpack的webpack-dev-server可以 ...
- Django启动
Django启动 (一)CMD中创建启动: 1.配置好django-admin.exe环境变量,切换到项目文件夹路径 切换磁盘:>>>E: 显示文件列表:>>>di ...
- Jenkins-插件开发-BUG-Messages类编译报错
注意:下载Jenkins插件源码后报错Messages这个类怎么导包都报编译错误的问题! 今天从GitHub下载了Jenkins的一些插件源码,准备自己研究研究写个插件.但是发现每个源码中都存在一个编 ...