import java.util.*;
public class RedrawLadder2 {
Scanner scan = new Scanner(System.in);
PeopleNumber pn = new PeopleNumber();
DrawLadder dl = new DrawLadder();
Random random = new Random();
String [] arr = {"│", "├", "──", "┤"};
int b = 0;
public void redrawLadder(int a, int height, String[] stuff, String[] name, String[] c) {
for(int i = 0; i < c.length; i++) {
System.out.print((i + 1) + ". " + name[i]);
for(int j = 0; j < 5; j++) {
System.out.print(" ");
}
}
System.out.println();
for(int i = 0; i < stuff.length; i++) {
System.out.print((i + 1));
for(int j = 0; j < 5; j++) {
System.out.print(" ");
}
}
System.out.println();
for(int i = 0; i < a; i++) {
System.out.print("│");
for(int j = 0; j < 5; j++) {
System.out.print(" ");
}
}
System.out.println();
//초반 1번라인 찍는 로직
for(int k = 0; k < (height - 2); k++) {
for(int i = 0; i < a; i++) {
if(b == 1 && i != 0) {
b = 3;
}
else if(i == a - 1) {
if(b == 1) {
b = 3;
}
else {
b = 0;
}
}
else {
b = random.nextInt(2);
}
System.out.print(arr[b]);
if(b == 1 && i != a - 1) {
for(int j = 0; j < 5; j++) {
System.out.print("─");
}
}
else {
for(int j = 0; j < 5; j++) {
System.out.print(" ");
}
}
if(b == 1) {
c[i] = name[i + 1];
c[i + 1] = name[i];
}
for(int q = 0; q < c.length; q++) {
name[q] = c[q];
}
}
System.out.println();
}
//중간라인 찍는 로직
for(int i = 0; i < a; i++) {
System.out.print("│");
for(int j = 0; j < 5; j++) {
System.out.print(" ");
}
}
System.out.println();
for(int i = 0; i < stuff.length; i++) {
System.out.print((i + 1));
if(i >= 9) {
for(int j = 0; j < 4; j++) {
System.out.print(" ");
}
}else {
for(int j = 0; j < 5; j++) {
System.out.print(" ");
}
}
}
System.out.println();
for(int i = 0; i < stuff.length; i++) {
System.out.print((i + 1) + ". " + stuff[i]);
for(int j = 0; j < 5; j++) {
System.out.print(" ");
}
}
System.out.println();
System.out.println();
System.out.println();
//마지막 라인 찍는 로직
for(int i = 0; i < c.length; i++) {
System.out.println();
System.out.print(c[i] + "님 : " + stuff[i]);
}
}
}
import java.util.*;
public class LadderMain {
Scanner scan = new Scanner(System.in);
PeopleNumber pn = new PeopleNumber();
DrawLadder dl = new DrawLadder();
RedrawLadder2 rl2 = new RedrawLadder2();
public LadderMain() {
doProcess();
}
public void doProcess() {
//참가자 인원을 받는다(경품의 수를 정한다.)
pn.doProcess();
//사다리를 그린다.
dl.drawLadder(pn.a, pn.height, pn.stuff);
//콘솔창을 초기화한다.
nullPoint();
rl2.redrawLadder(pn.a, pn.height, pn.stuff, pn.name, pn.c);
}
public void nullPoint() {
for(int i = 0; i < 100; i++) {
System.out.println();
}
}
public static void main(String[] args) {
new LadderMain();
}
}
import java.util.*;
public class PeopleNumber {
Scanner scan = new Scanner(System.in);
int a;
int height;
String [] stuff;
String [] name;
String [] c;
public void doProcess() {
peopleNum();
peopleName();
scanStuff();
scanHeight();
}
public void peopleNum() {
System.out.print("참가 인원 수를 입력하세요 : ");
a = scan.nextInt();
c = new String [a];
}
public void peopleName() {
name = new String[a];
System.out.print("참가자 이름을 입력하세요 : ");
for(int i = 0; i < name.length; i++) {
name[i] = scan.next();
c[i] = name[i];
}
for(int i = 0; i < name.length; i++) {
System.out.println("이름 : " + (i + 1) + ". " + name[i]);
}
}
public void scanStuff() {
stuff = new String [a];
System.out.print("경품을 입력하세요: ");
for(int i = 0; i < stuff.length; i++) {
stuff[i] = scan.next();
}
for(int i = 0; i < stuff.length; i++) {
System.out.println("경품 : " + (i + 1) + ". " + stuff[i]);
}
}
public void scanHeight() {
System.out.print("높이를 설정해주세요 : ");
height = scan.nextInt();
}
}
import java.util.*;
public class DrawLadder {
Scanner scan = new Scanner(System.in);
Random random = new Random();
PeopleNumber pn = new PeopleNumber();
public void drawLadder(int a, int height, String[] stuff) {
for(int i = 0; i < height; i++) {
for(int j = 0; j < a; j++) {
for(int k = 0; k < 5; k++) {
System.out.print(" ");
}
System.out.print("│");
}
System.out.println();
}
for(int i = 0; i < a; i++) {
for(int j = 0; j < 2; j++) {
System.out.print(" ");
}
System.out.print(stuff[i]);
}
}
}