1006. 换个格式输出整数 (15)
让我们用字母B来表示“百”、字母S表示“十”,用“12...n”来表示个位数字n(<10),换个格式来输出任一个不超过3位的正整数。例如234应该被输出为BBSSS1234,因为它有2个“百”、3个“十”、以及个位的4。
输入格式:每个测试输入包含1个测试用例,给出正整数n(<1000)。
输出格式:每个测试用例的输出占一行,用规定的格式输出n。
对不同大小的值分开处理。
小白在此做题并整理记录自己的进度,为后来Java学习者带来遍历,这整个项目的Java代码会在Github持续更新。Github地址:https://github.com/veveup/PAT
import java.util.Scanner; /* 对三位二位和一位分别分开处理 使用StringBuidler存储 */ public class no1006 { public static void main(String[] args){ Scanner scanner =new Scanner(System.in); int input =new Integer(scanner.nextLine()); boolean isThree =false,isTwo=false,isOne=false; if(input>99){ isThree=true; isTwo=true; isOne=true; }else if(input>9){ isTwo=true; isOne=true; }else { isOne=true; } StringBuilder stringBuilder =new StringBuilder(); if(isThree){ for(int i=input/100;i>0;i--) { stringBuilder.append("B"); } } if(isTwo){ for(int i =(input/10)%10;i>0;i--){ stringBuilder.append("S"); } } if (isOne){ for (int i=1;i<=input%10;i++){ stringBuilder.append(i); } } System.out.println(stringBuilder); } }