728x90
문제 출처: https://www.acmicpc.net/problem/11721
11721번: 열 개씩 끊어 출력하기
첫째 줄에 단어가 주어진다. 단어는 알파벳 소문자와 대문자로만 이루어져 있으며, 길이는 100을 넘지 않는다. 길이가 0인 단어는 주어지지 않는다.
www.acmicpc.net
문제
알파벳 소문자와 대문자로만 이루어진 길이가 N인 단어가 주어진다.
한 줄에 10글자씩 끊어서 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 단어가 주어진다. 단어는 알파벳 소문자와 대문자로만 이루어져 있으며, 길이는 100을 넘지 않는다. 길이가 0인 단어는 주어지지 않는다.
출력
입력으로 주어진 단어를 열 개씩 끊어서 한 줄에 하나씩 출력한다. 단어의 길이가 10의 배수가 아닌 경우에는 마지막 줄에는 10개 미만의 글자만 출력할 수도 있다.
예제 입력 1
BaekjoonOnlineJudge
예제 출력 1
BaekjoonOn
lineJudge
예제 입력 2
OneTwoThreeFourFiveSixSevenEightNineTen
예제 출력 2
OneTwoThre
eFourFiveS
ixSevenEig
htNineTen
자바 정답
import java.io.*;
class Main{
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String st = br.readLine();
for(int i = 0; i<st.length()/10+1; i++) {
if (i == st.length()/10) system.out.println(st.substring(10*i,st.length()%10+10*i));
else System.out.println(st.substring(10*i,10+10*i));
}
}
}
1. 버퍼리더를 br로 설정, st에 입력
2. for문 - if문 - 마지막 수 st.length()%10으로 서브스트링 세팅
3. else문 - 0:10, 10:20 등의 형식으로 서브스트링 세팅
파이썬 정답
import sys
string = sys.stdin.readline()
for i in range(len(string)//10+1):
print(string[10*i:10+10*i])
1. string에 입력
2. for문- 길이//10+1만큼 반복
3. stirng 0:10, 10:20등의 형식으로 슬라이싱 세팅
문제 풀면서 발견한 파이썬과 자바의 차이점
파이썬은 슬라이싱의 크기가 넘어도 오류없이 그대로 안나옴
자바는 서브스트링의 크기가 넘으면 오류가 나와서 if-else를 세팅
728x90
'코딩 > 백준' 카테고리의 다른 글
[백준/파이썬/자료구조] 11279번 최대 힙 코딩테스트 연습풀이 (0) | 2022.05.21 |
---|---|
[백준/파이썬/문자열] 11656번 접미사 배열 코딩테스트 연습풀이 (0) | 2022.05.19 |
[백준/자바/파이썬] 1924번 2007년 코딩테스트 연습풀이 (0) | 2022.05.17 |
[백준/자바/파이썬] 3052번 나머지 코딩테스트 연습풀이 (0) | 2022.05.17 |
[백준/파이썬/그래프] 2667번 단지번호붙이기 코딩테스트 연습풀이 (0) | 2022.05.16 |