일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 가끔은_말로
- dfs
- 가끔은 말로
- dropout
- 다익스트라
- back propagation
- NEXT
- tensorflow
- 세그먼트 트리
- 2023
- 문자열
- DP
- 우선 순위 큐
- object detection
- 분할 정복
- Overfitting
- 회고록
- BFS
- lazy propagation
- 플로이드 와샬
- 너비 우선 탐색
- 자바스크립트
- 알고리즘
- 크루스칼
- 백트래킹
- c++
- 조합론
- pytorch
- 미래는_현재와_과거로
- 이분 탐색
- Today
- Total
Doby's Lab
[파이썬] 백준 1350번: 진짜 공간, 리스트(List) 본문
https://www.acmicpc.net/problem/1350
(리스트에 관한 참고 자료)
https://art-coding3.tistory.com/6
이번 문제는 for문을 통해 파일의 크기를 즉각적으로 입력받아 처리하려 했었는데 파이썬은 데이터를 한 줄씩 읽는 거 같다.
그래서 int(input)의 형태로 for문을 통해 입력을 받기는 안 되기 때문에 리스트(list)라는 자료형이 필요했다.
리스트는 배열과 같은 역할이다. 데이터들을 하나의 변수(리스트)에다가 묶어서 저장할 수 있다.
리스트를 선언하는 방법은 크게 2가지 방법이 있다.
li1 = [1, 2, 3]
li2 = list()
다음과 같이 대괄호를 이용해 선언하는 방법이 있고, list()를 이용해 빈 리스트를 사용하는 방법이 있다.
물론 li1에는 [1, 2, 3] 원소가 각각 들어가 있다.
우선은 리스트에 입력을 넣는 방법이 급하기 때문에 리스트에 입력 넣는 방법부터 먼저 알아보자.
.append()
li = list()
a = int(input())
li.append(a)
다음과 같이 append 메서드를 사용하여 li라는 빈 리스트 변수에 a라는 int형 변수를 집어넣을 수 있다. 다른 자료형도 마찬가지다.
숫자, 문자 혼용이 가능하다고 한다. (웬만하면 그럴 일 없게 사용해야겠다)
하지만, 지금은 입력을 원하면서도 한 줄에 모든 입력 데이터가 있기 때문에 이 방법을 원하는 것은 아니다.
이럴 때 필요한 함수가
.split()
split()은 원래 문자열 관련 메서드인데 원래 이렇게 생겼다.
.split(sep, maxsplit)
sep는 구분자, maxsplit은 최대 구분 횟수이다.
따로 구분자를 설정해두지 않는다면 ' '(띄어쓰기)로 디폴트 되어있다.
li = list(input().split())
print(li)
이런 식으로 사용할 수 있는데 "Hello, World!"를 입력한다고 치면 output값은 이렇게 돌아온다.
['Hello,', 'World!']
띄어쓰기를 기준으로 끊겨 리스트에 각 원소로 들어간 것을 알 수 있다.
그렇다면 이건 문자열이고, 숫자는 어떤 식으로 입력받아야 하는가?
li = list(map(int, input().split()))
print(li)
map을 사용하여 입력을 받아야 한다.
(이렇게 사용해야 하는 이유 https://ccamppak.tistory.com/38)
int 변환형 함수가 리스트는 변환시킬 수 없어서 map을 사용한다고 한다.
[AC 코드]
n = int(input())
li = list(map(int, input().split()))
m = int(input())
result = 0
for i in li:
if i % m == 0:
result += i // m
else:
result += i // m + 1
print(result * m)
'Code about AI > Python' 카테고리의 다른 글
Python, Adj List, Global Variable, Recursive call (0) | 2022.07.07 |
---|---|
코드업 Python 기초 100제 정리 (0) | 2022.06.26 |
[Python] 백준 1264번: 모음의 개수, if ~ in, for 문자 in 문자열 (0) | 2022.03.01 |
[Python] 백준 5543번: 상근날드, 최솟값 함수 (0) | 2022.02.27 |
[Python] 백준 2739번: 구구단, 정수형 변수 출력 (0) | 2022.02.27 |