728x90

list 18

[Python]백준 BaekJoon.AC 2798 : 블랙잭(브루트포스 알고리즘)

https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net card 리스트에 카드 정보들을 넣어주고, 첫번째 카드를 뽑는 for문(i) 두번째 카드를 뽑는 for문(j) 세번째 카드를 뽑는 for문(l)을 만들어준다. 여기서 포인트는 각 for문의 범위다. 두번째 카드와 세번째 카드의 시작점을 직전에 뽑은 카드의 다음 카드로 설정해줬다. 끝점은.. 만약 첫번째 for문의 끝점이 N이고 N-2번 카드를 뽑았다면, 두번째 카드..

[Python]BaekJoon.AC 2022.01.06

[Python]백준 BaekJoon.AC 2775 : 부녀회장이 될테야(2차원 리스트)

https://www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net 이번 문제는 2차원 리스트를 시도해봤다! 리스트 안에 리스트를 넣는다고 말할 수 있다. (이 문제에서 그러진 않았지만, 열마다 행의 개수를 자유자재로 설정할 수 있음은 정말 큰 편리함이다.) 바깥 리스트를 층수, 안쪽 리스트를 호라고 설정해줬다. 리스트를 생성하고 먼저 for문을 이용해 0층 사람수를 깔아줬다.(k) 0층부터 flo층까지 있고, 0호부터 uni-1호까지 있는 셈이다. 그러나 0호를 1호로 생각하기로 하는, 그런 리스트 형..

[Python]BaekJoon.AC 2022.01.06

[Python]백준 BaekJoon.AC 2292 : 벌집(list)

https://www.acmicpc.net/problem/2292 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 벌집이 층마다 가지고 있는 최대값을 살펴보면 1, 7, 19, 37, 61, 91····으로 이루어져 있다. 이는 이전 값에 +6, +12, +18, +24, +30···· 씩을 더한 값이다. 또한 이는 6의 배수만큼씩 늘어난 값이다. 리스트에 각 껍데기마다 가지고 있는 최대 주소를 저장한다. i와 n을 이용해 for문과 유사한 기능을 구현했다. 그냥 for문을 사용할까 했는데.. while을 사용해봤다...

[Python]BaekJoon.AC 2022.01.05

[Python]백준 BaekJoon.AC 1546 : 평균(list, sort())

https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net N = int(input()) scores = list(map(int, input().split())) scores.sort(reverse=True) M = scores[0] sum = 0 for x in scores: sum = sum + (x / M * 100) print(sum/N)

[Python]BaekJoon.AC 2022.01.03

[Python]백준 BaekJoon.AC 2920 : 음계(list)

https://www.acmicpc.net/problem/2920 2920번: 음계 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8 www.acmicpc.net hmm... 완성하고 보니 좀 복잡해보이긴 하다만... 다른 사람 코드 그냥 패스.. 겉 if문 대신 switch문을 사용하고 싶었는데, 파이썬에는 switch가 없었다...! 그냥 if 사용해 분류해줬다. A = list(map(int, input().split())) if A[0]==1: for i in range(1, 8): if A[i]-1 != A..

[Python]BaekJoon.AC 2022.01.02

[Python]백준 BaekJoon.AC 2577 : 숫자의 개수(for문, list)

https://www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다. www.acmicpc.net 파이썬에는 배열 개념이 없어서.. 아직 헷갈린다.. list를 배열처럼 사용했는데, 효율적인 방법은 아니다. 혹시나 싶어서 int(input())을 세번 받아서 곱해봤는데 실행되서 놀랐다!ㅋㅋㅋ 간편함은 정말 굿.. 곱한 값을 string으로 바꿔 한 글자씩 꺼내줬고, 이에 해당하는 list 값을 늘려주는 방식으로 진행했다. list()는 str같은 오브를 받는 것 같고, 한 글자씩 넣어주는 것 같다.(아직 더 연구가 필요함..) list = [0,0..

[Python]BaekJoon.AC 2022.01.01

[Python]백준 BaekJoon.AC 10871 : X보다 작은 수(list, for문)

https://www.acmicpc.net/problem/10871 10871번: X보다 작은 수 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. www.acmicpc.net N, X = map(int, input().split()) A = list(map(int, input().split())) for n in A: if n < X: print(n, end=" ")

[Python]BaekJoon.AC 2021.12.31

[Python]백준 BaekJoon.AC 10818 : 최소, 최대(list, sort)

https://www.acmicpc.net/problem/10818 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net list()를 이용해 list가 된다. sort()는 list를 오름차순으로 정렬해준다! N = int(input()) A = list(map(int, input().split())) A.sort() print(A[0], A[N-1])

[Python]BaekJoon.AC 2021.12.30
728x90