HDOJ/HDU 1256 画8(绞下思维~水题)

简介: HDOJ/HDU 1256 画8(绞下思维~水题)

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


水题。。多想想就出来了。

import java.util.Scanner;
public class Main{
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int t = sc.nextInt();
        int f=0;
        while (t-- > 0) {
            String s = sc.next();
            int n = sc.nextInt();
            if (f!=0) {
                System.out.println();
            }
            int m = (int) n / 6 + 1;
            // System.out.println(m);//m+2
            int h = n - 3;
            h = h / 2 + 1;
            int p=h;
            if(n%2!=0){
                h--;
            }
            for (int i = 0; i < n; i++) {
                if (i == 0 || i == n - 1 || i == p) {
                    for (int k = 0; k < m + h; k++) {
                        if (k < m) {
                            System.out.print(" ");
                        } else {
                            System.out.print(s);
                        }
                    }
                    System.out.println();
                } else {
                    for (int k = 0; k < 2 * m + h; k++) {
                        if (k < m || k >= m + h) {
                            System.out.print(s);
                        } else {
                            System.out.print(" ");
                        }
                    }
                    System.out.println();
                }
            }
            f=1;
        }
    }
}
目录
相关文章
|
定位技术
HDOJ/HDU 1180 诡异的楼梯(经典BFS-详解)
HDOJ/HDU 1180 诡异的楼梯(经典BFS-详解)
131 0
HDOJ/HDU 1180 诡异的楼梯(经典BFS-详解)
HDOJ 1056 HangOver(水题)
HDOJ 1056 HangOver(水题)
100 0
HDOJ 1056 HangOver(水题)
|
Java 定位技术 C++
HDOJ1253 胜利大逃亡 BFS
HDOJ1253 胜利大逃亡 BFS
124 0
HDOJ1253 胜利大逃亡 BFS
|
数据挖掘
HDU-1032,The 3n + 1 problem(水题)
HDU-1032,The 3n + 1 problem(水题)
HDU-1370,Biorhythms(中国剩余定理)
本题主要就是应用中国剩余定理。
HDOJ/HDU 2537 8球胜负(水题.简单的判断)
HDOJ/HDU 2537 8球胜负(水题.简单的判断)
104 0
|
Java
HDOJ/HDU 5686 Problem B(斐波拉契+大数~)
HDOJ/HDU 5686 Problem B(斐波拉契+大数~)
102 0
|
算法 文件存储
[leetcode/lintcode 题解] 算法面试真题详解:Fizz Buzz 问题
[leetcode/lintcode 题解] 算法面试真题详解:Fizz Buzz 问题
[leetcode/lintcode 题解] 算法面试真题详解:Fizz Buzz 问题
|
人工智能 Java 算法
HDU 2084 数塔(简单DP入门)
数塔 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 41852    Accepted Submission(s): 24820 ...
898 0