[백준] 2675번 : 문자열 반복 - JAVA(자바)

Life is ninanino·2022년 11월 10일
1

[백준] JAVA

목록 보기
33/37
post-thumbnail

https://www.acmicpc.net/problem/2675


문자열 S에는 QR코드인 알파누메릭 문자만 들어있다는게 무슨 소리일까
주어지는 입력값이 아무튼 저 범위 내 라는 소리같다

먼저 2를 입력받고 3 ABC 5 /HTP를 입력받는다

int n = sc.nextInt();

for(int i=0; i<n; i++) {...}

로 입력받아서 몇 줄을 입력받을지를 정한다
그 다음 int와 String을 입력받아야하는데
String은 입력받은 int의 길이만큼 반복한다

int newN = sc.nextInt();
String index = sc.nextLine();

으로 한줄을 입력받았다.
그리고 입력받은 index의 길이만큼 newN을 돌려준다

for(int i=0; i<index.length; i++){
	for(int j=0; j<newN; j++){
    	System.out.println(index.charAt(j);}}

그리고 문제가 발생한다

?????공백뭐야
nextInt다음 nextLine으로 받아서 공백까지 입력받은 것 같다
그래서 nextLine을 next로 바꾸고 다시 돌렸다

공백이 사라졌다!
for문이 끝나는 바깥에 println으로 개행을 해줘야한다
인텔리제이에서 잘돌아가길래 제출했더니 틀렸다고 나오길래
개행으로 수정했따..... 이럴수가

for(int j=0; j<str.length(); j++){
                for(int k=0; k<num; k++){
                    System.out.print(str.charAt(j));
                }
            }
            System.out.println();
        }

++정답코드

package 백준;// @ author ninaaano

import java.util.Scanner;

/*
문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오.
즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다.
S에는 QR Code "alphanumeric" 문자만 들어있다.
QR Code "alphanumeric" 문자는 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ\$%*+-./: 이다

2
3 ABC
5 /HTP

AAABBBCCC
/////HHHHHTTTTTPPPPP
 */
public class b_2675 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int n = sc.nextInt(); // 입력 받을 줄의 갯수

        for(int i=0; i<n; i++){
            int num = sc.nextInt(); // 반복할 숫자
            String str = sc.next();

            for(int j=0; j<str.length(); j++){
                for(int k=0; k<num; k++){
                    System.out.print(str.charAt(j));
                }
            }
            System.out.println();
        }
    }
}

입력받을때 문자열에 공백이 포함되어 있는지도 신경써야할 것 같다

profile
백엔드 프로그래밍을 공부하고 있습니다. AWS, 클라우드 환경에 대해 관심이 많습니다.

0개의 댓글