字符串替换
Posted gy7777777
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符串替换相关的知识,希望对你有一定的参考价值。
import java.util.Scanner; /** * 给定一个仅由小写字母x和y组成且长度不超过105的字符串, * 每次可以将字符串中的一个子串xy替换成字符串yyx, * 那么至少要替换多少次才能让字符串中不存在子串xy? * * 核心要点: * 1. 一个字符串不存在子串xy,则需要保证所有的y均在x前; * 2. 对x{Ny}进行替换的结果是{2Ny}x,需要替换的次数为y次。 * * 解题思路: * 从后往前遍历,将x每次都替换到最后,按上面核心要点计算次数及增加y个数 */ public class test01 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str = sc.nextLine(); // 最后一个x后面的y的数量 int count = 0; // 替换次数 int res = 0; int len = str.length(); // (a + b ) % c = a % c + b % c for (int i = len - 1; i >= 0; i--) { if (str.charAt(i) == ‘y‘) { count += 1; } else if (str.charAt(i) == ‘x‘) { res = (res + count) % 1000000007; count = (count * 2) % 1000000007; } } System.out.println(res); } }
以上是关于字符串替换的主要内容,如果未能解决你的问题,请参考以下文章