题目要求
P4327题目链接
这种横向拼接的题比较不好直接处理,因为你必须把每一行处理好再打印出来。
不过好在本题是规律题: 我们把每4列切成一个模块,最后补上最后一列就可以。 但是,第1组开头是#,需要先处理一下呢。
后面的各组按照mod3处理:
mod3==0:
“…#.” “.#.#” “*.?.” “.#.#” “…#.”
mod3==1:
“…#.” “.#.#” “#.?.” “.#.#” “…#.”
mod3==2:
“…*.” “.*.*” “*.?.” “.*.*” “…*.”
然后就分别把这一组组的String进行replaceAll()以后,替换掉原有String,再加入StringBuilder里面。 最后如上所言,补上去最后一列就行。
具体的看代码吧~~
AC代码(Java语言描述)import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String[] alphabets = scanner.nextLine().split("");
scanner.close();
String demo1 = "..#.", demo6 = "..*.", demo11 = "..#.";
String demo2 = ".#.#", demo7 = ".*.*", demo12 = ".#.#";
String demo3 = "#.?.", demo8 = "*.?.", demo13 = "*.?.";
String demo4 = ".#.#", demo9 = ".*.*", demo14 = ".#.#";
String demo5 = "..#.", demo10 = "..*.", demo15 = "..#.";
StringBuilder line1 = new StringBuilder(demo1);
StringBuilder line2 = new StringBuilder(demo2);
StringBuilder line3 = new StringBuilder(demo3.replaceAll("\\?", alphabets[0]));
StringBuilder line4 = new StringBuilder(demo4);
StringBuilder line5 = new StringBuilder(demo5);
for (int i = 1; i
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?