画8_hdu_1256(图形).java

画8

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 3153    Accepted Submission(s): 1395

Problem Description
谁画8画的好,画的快,今后就发的快,学业发达,事业发达,祝大家发,发,发.
 
Input
输入的第一行为一个整数N,表示后面有N组数据.
每组数据中有一个字符和一个整数,字符表示画笔,整数(>=5)表示高度.
 
Output
画横线总是一个字符粗,竖线随着总高度每增长6而增加1个字符宽.当总高度从5增加到6时,其竖线宽度从1增长到2.下圈高度不小于上圈高度,但应尽量接近上圈高度,且下圈的内径呈正方形.
每画一个"8"应空一行,但最前和最后都无空行.
 
Sample Input
2 A 7 B 8
 
Sample Output
AA AA AA AA AA AA AA AA AA AA AA BBB BB BB BB BB BBB BB BB BB BB BB BB BBB
 
Source
 

import java.util.Scanner;

public class Main{
	public static void main(String[] args) {
		Scanner input=new Scanner(System.in);
		int N=input.nextInt();
		while(N-->0){
			String s=input.next();
			int n=input.nextInt();
			int e=n/6+1;
			StringBuilder sb=new StringBuilder();
			StringBuilder sb1=new StringBuilder();
			for(int i=0;i<e;i++){
				sb.append(" ");
				sb1.append(s);
			}
			for(int i=0;i<n-3-(n-3)/2;i++){
				sb.append(s);
				sb1.append(" ");
			}
			for(int i=0;i<e;i++)
				sb1.append(s);
			System.out.println(sb);
			for(int i=0;i<(n-3)/2;i++){
				System.out.println(sb1);
			}
			System.out.println(sb);
			for(int i=0;i<n-3-(n-3)/2;i++){
				System.out.println(sb1);
			}
			System.out.println(sb);
			if(N!=0)
				System.out.println();
		}
	}
}


原文地址:https://www.cnblogs.com/pangblog/p/3265396.html