반응형
문제(출처)
알파벳 소문자와 대문자로만 이루어진 길이가 N인 단어가 주어진다.
한 줄에 10글자씩 끊어서 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 단어가 주어진다. 단어는 알파벳 소문자와 대문자로만 이루어져 있으며, 길이는 100을 넘지 않는다. 길이가 0인 단어는 주어지지 않는다.
출력
입력으로 주어진 단어를 열 개씩 끊어서 한 줄에 하나씩 출력한다. 단어의 길이가 10의 배수가 아닌 경우에는 마지막 줄에는 10개 미만의 글자만 출력할 수도 있다.
예제 입력
BaekjoonOnlineJudge
예제 출력
BaekjoonOn
lineJudge
내 풀이
import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;
public class Main { public static void main(String args[]) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); try { String str = br.readLine(); /* 런타임 에러 bw.write(str.substring(0, 10)); bw.newLine(); for(int i =1 ; i< str.length()/10; i++) { bw.write(str.substring(i*10, (i+1)*10)); bw.newLine(); } bw.write(str.substring((str.length()/10)*10, str.length())); bw.flush(); bw.close(); */// /* bw.write(str.charAt(0)); for(int i = 1; i < str.length(); i++) { if(i%10 == 0) { bw.newLine(); } bw.write(str.charAt(i)); } bw.flush(); bw.close();// */ } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String args[]) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
try {
String str = br.readLine();
/* 런타임 에러
bw.write(str.substring(0, 10));
bw.newLine();
for(int i =1 ; i< str.length()/10; i++) {
bw.write(str.substring(i*10, (i+1)*10));
bw.newLine();
}
bw.write(str.substring((str.length()/10)*10, str.length()));
bw.flush();
bw.close();
*/
// /*
bw.write(str.charAt(0));
for(int i = 1; i < str.length(); i++) {
if(i%10 == 0) {
bw.newLine();
}
bw.write(str.charAt(i));
}
bw.flush();
bw.close();
// */
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
내 풀이 해석
규칙을 찾아보려고 첫번째와 마지막 출력은 반복문에서 제외하고 그외는 반복문을 통해 출력했습니다.
런타임 에러가 나와서 이해가 되지 않아 질문에 올렸고 답변을 기다리고 있습니다.
-> 답변 : "어떤 입력에 대해서인가" 라는 답변을 주셨고 예제까지 주셨는데 한 글자에 입력에 대한 에러였습니다.
한글자씩 읽어서 10으로 나눈 나머지가 0이면 개행을 하도록 했습니다.
이 방법이 쉬운 편입니다.
반응형
'개발(합니다) > 알고리즘&코테' 카테고리의 다른 글
알고리즘 단계별로 풀어보기 : BOJ-9498(시험성적) (0) | 2018.12.15 |
---|---|
알고리즘 단계별로 풀어보기 : BOJ-15552(빠른A+B) (0) | 2018.12.15 |
알고리즘 단계별로 풀어보기 : BOJ-11720(숫자의합) (0) | 2018.12.14 |
알고리즘 단계별로 풀어보기 : BOJ-8393(합) (0) | 2018.12.14 |
알고리즘 단계별로 풀어보기 : BOJ-1924(2007년) (0) | 2018.12.13 |