음...내가 좀 어렵게 생각한 것 같다.
1. 문자열을 입력받아 String 변수 str에 저장한다.
2. str의 길이를 len이라는 변수에 저장한다. (꼭 저장하지 않아도 되지만 코드의 가독성 때문에)
3. String.substring(첫 인덱스, 마지막 인덱스-1)를 사용해 10글자씩 잘라 출력한다.
만약 문자열이 25글자라면 인덱스 0~9까지 출력하고, 10~19까지 출력해야 하니
i*10부터 (i+1)*10-1까지 출력했다.
4. 입력받은 문자열의 길이가 10으로 나눠떨어지지 않으면 나머지 글자를 String.substring(첫 인덱스)로 출력한다.
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.BufferedReader;
public class Main{
public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
int len = str.length();
for(int i=0;i<len/10;i++){
System.out.println(str.substring(i*10,(i+1)*10-1));
}
if(len%10!=0){
System.out.println(str.substring(len-(len%10)));
}
}
}
String.charAt()을 사용해서 10글자를 출력했을 때마다 개행을 시키는 방법으로도 풀어봤다.
0~9까지 10글자를 출력하고 줄을 바꾸기 위해서
인덱스 % 10 == 9일 때마다 개행해줬다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
for(int i=0;i<str.length();i++){
System.out.print(str.charAt(i));
if(i%10==9) System.out.println();
}
}
}
'Algorithm > [BOJ] - JAVA' 카테고리의 다른 글
[백준] 2442 : 별 찍기 - 5 JAVA 풀이 (0) | 2022.06.03 |
---|---|
[백준] 2441 :별 찍기 4 JAVA 풀이 (0) | 2022.06.03 |
[백준] 11720 : 숫자의 합 JAVA 풀이 (0) | 2022.06.02 |
[백준] 18870 : 좌표 압축 JAVA 풀이 (0) | 2022.05.29 |
[백준] 10814 : 나이순 정렬 JAVA 풀이 (0) | 2022.05.29 |