본문 바로가기
Learning-log/Algorithm 문풀

백준(파이썬) - 15552번, 11021번

by why제곱 2022. 10. 23.

 

1. 15552번

 

1) 문제

 

2) 풀이

 

3) 문법 및 풀이과정

이 문제를 통해 sys.stdin.readline() 이라는 문법을 배웠으며, 여러 줄을 입력 받을 때에 input으로 여러 줄을 받으면 시간초과가 발생할 수 있다는 것도 배웠다.

- sys.stdin.readline()

input으로 여러 입력값을 받다보면 시간초과가 발생할 수 있고 이럴 때 이 문법 사용

이를 사용하기 위해선 import sys를 해야함. 그 외 사용법은 input과 유사

 

 

 

2. 11021번

 

1) 문제

 

2) 풀이

 

3) 문법 및 풀이과정

문자열과 숫자를 이어서 출력하고 싶을 때, 그 동안은 ','(콤마)를 이용해서 연달아 붙여왔다. 다만 이 때의 문제점은 ','로 연결한 것들 사이에 공백도 함께 출력된다는 점이다.

이 문제에서 출력값 왼쪽에 'Case #(i+1):'이 출력되어야 하며 이때 #까지는 문자, (i+1)은 정수, : 은 문자에 해당되며 #부터 : 까지는 사이에 공백이 없기 때문에 위에서 설명한 방법을 사용할 수 없었다.

 

-%d

이 때 사용할 수 있는 것이 '%d'이다. %d는 정수를 의미하며 " " 큰따옴표 사이에 있는 문자들과 함께 쓰면 문자열 사이에 정수를 입력할 수 있다. 사용 방법은 아래와 같다.

" 입력하고 싶은 숫자는 %d입니다."%x

위 처럼 큰 따옴표 안에 있는 문자열 중 숫자를 입력하고 싶은 부분에 %d를 넣고 오른쪽 큰따옴표 다음에 %(입력할 숫자)를 쓰면 된다.

정수 외에도 아래와 같은 기호들이 존재한다.

%d : 정수

%f : 실수

%s : 문자열

%을 활용하는 것 외에도 {} , 포맷(format)함수 활용하기 등등의 방법도 있다.

3. 11022번

 

1) 문제

 

2) 풀이

 

3) 문법 및 풀이과정

위의 2번 문제에서는 %d를 활용했다면 이번에는 {} 와 format함수를 활용해봤다. 이 방법은 변수가 여러 개일 때 활용하기 좋다는 장점이 있다.

 

원하는 위치에 { } 를 놓고 큰 따옴표가 끝나는 지점에 '.'(온점)을 찍은 후 format(변수1, 변수2 , .. ) 를 입력해주면 된다.

이 때, { } 안에 아무것도 입력하지 않으면 뒤의 format에 입력한 순서대로 숫자가 들어가고 위의 풀이 처럼 0, 1,2와 같이 format 뒤에 나올 index를 입력하여 원하는 변수의 숫자가 입력되도록 하는 방법이 있다.