728x90
반응형

2675번: 문자열 반복 (acmicpc.net)

 

2675번: 문자열 반복

문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다

www.acmicpc.net

 

 

 

Java 문제풀이

import java.util.*;

public class B2675 {

	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		
		int n = scan.nextInt(); // 작업할 횟수
		String[] result = new String[n]; // 결과값을 저장할 배열
        
		// n번만큼 작업을 진행
		for(int i=0;i<n;i++) {
			int num = scan.nextInt(); // 문자를 반복할 횟수
			String str = scan.next(); // 문자열
			String str_num ="";
			// 각 문자를
			for(int j=0;j<str.length();j++) {
				// num번만큼 반복하여 출력
				for(int k=0;k<num;k++) {
					str_num += str.charAt(j);
				}
			}
			result[i] = str_num;
		}
		
		// 결과값을 모아둔 배열 출력
		for(String r:result) {
			System.out.println(r);
		}

	}

}

 

어쩌다보니 for문을 3중으로 써버렸습니다. 실제로 개발할때는 반복문의 중복을 최대한 피하도록 노력해야겠습니다. 생각해보면 백준도 실제 개발을 위한 공부인데.. 지금부터라도 고쳐야겠네요.

 

코드는 짧고 간지나게 짜는것이 아니라.. 보기 편하게 짜는것이 좋다고.. 합니다. 잘못 익힌 습관을 고치도록 노력해야겠습니다.

728x90
반응형

+ Recent posts