문제 조건

 

 

문제

 

 

입력

예제 입력 1

 

 

출력

 

 

문제 분석

- 문제는 행과 열을 조건에 따라 설정하면 쉽게 풀 수 있다.

 

 

문제 풀이

1) 글자를 먼저 입력받고 R과 C를 조건에 맞춰 설정해야한다.

2) 입력받을 때 R과 C를 바꿔서 입력받아야 한다. (출력시 R과C로 출력할 것이기 때문에)

3) 입력시 R과 C를 고려하여 입력받았기때문에 그대로 출력한다.

 

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Main {

	private static int R, C, N;
	private static char[][] map;

	public static void main(String[] args) throws Exception {

		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String s = br.readLine();
		N = s.length();
		mapChk(N);
		map = new char[R][C];
		int k = 0;
		for (int i = 0; i < C; i++) {
			for (int j = 0; j < R; j++) {
				map[j][i] = s.charAt(k++);
			}
		}

		for (int i = 0; i < R; i++) {
			for (int j = 0; j < C; j++) {
				System.out.print(map[i][j]);
			}
		}

	}// main

	private static void mapChk(int len) {
		for (int i = 1; i < len; i++) {
			if (len % i == 0) {
				if (i <= len / i) {
					R = i;
					C = len / i;
				}
			}
		}
	}

}// class-end

'Algorithm > BOJ' 카테고리의 다른 글

BOJ 3985 롤케이크  (0) 2021.03.04
BOJ 2798 블랙잭  (0) 2021.03.03
BOJ 2941 크로아티아알파벳  (0) 2021.03.03
BOJ 17413 단어뒤집기2  (0) 2021.02.26
BOJ 11399 ATM  (0) 2021.02.17