python3 33

[백준/BOJ] 11656번: 접미사 배열 (파이썬3/Python3)

문제 https://www.acmicpc.net/problem/11656 11656번: 접미사 배열 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다. www.acmicpc.net 생각 먼저 문자열을 입력받음 문자열을 슬라이싱하여 리스트에 저장 사전 순으로 정렬한 뒤 출력 코드 S = input() R = [] for i in range(len(S)): R.append(S[i:]) R.sort(key=lambda x:x) for i in R: print(i)

문제/백준 2021.07.18

[백준/BOJ] 1431번: 시리얼 번호 (파이썬3/Python3)

문제 https://www.acmicpc.net/problem/1431 1431번: 시리얼 번호 첫째 줄에 기타의 개수 N이 주어진다. N은 1,000보다 작거나 같다. 둘째 줄부터 N개의 줄에 시리얼 번호가 하나씩 주어진다. 시리얼 번호의 길이는 최대 50이고, 알파벳 대문자 또는 숫자로만 이루 www.acmicpc.net 생각 우선 정렬의 기준이 길이가 먼저, 그 다음은 자리수의 합(숫자만), 그 다음은 사전 순이다. 길이나 사전 순은 lambda의 기준에 그냥 넣으면 되지만 자리수는 다르다! 우움 자리수를 미리 더해서 리스트에 추가하거나 함수를 만드는 것이 나을 것 같다. 코드 def sum(I): count = 0 for i in I: if i.isdigit(): count += int(i) re..

문제/백준 2021.07.18

[백준/BOJ] 10814번: 나이순 정렬 (파이썬3/Python3)

문제 https://www.acmicpc.net/problem/10814 10814번: 나이순 정렬 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 www.acmicpc.net 생각 일단 보자마자 생각나는 것은 딕셔너리나 2차원 배열? 딕셔너리보다는 리스트가 편할지도... 리스트형태로 리스트에 저장하고 나이를 기준으로 정렬하면 될 듯? lambda가 있으니... 코드 N = int(input()) d = [] for i in range(N): d.append(list(input().split())) d.sort(key=lambda x:int(x[0])) for i in ..

문제/백준 2021.07.18

[백준/BOJ] 10867번: 중복 빼고 정렬하기 (파이썬3/Python3)

문제 https://www.acmicpc.net/problem/10867 10867번: 중복 빼고 정렬하기 첫째 줄에 수의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. www.acmicpc.net 생각 몇개의 수를 받을 지에 대해서는 필요가 없을 것 같다. map을 활용하여 두번째로 주어지는 수들을 입력받고 set으로 감싼다음, list화 시키고 sort하여 출력하면 끝! N = (int)(input()) l = list(set(map(str, input().split()))) l.sort() print("{list}".format(list = " ".join(l))) 이렇게 하려고 했으나 틀렸다고 해서 좀더 풀어..

문제/백준 2021.07.18

[백준/BOJ] 11866번: 요세푸스 문제 0 (파이썬3/Python3)

문제 https://www.acmicpc.net/problem/11866 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net 생각 map을 사용해서 input().split()해서 값을 받자! 1부터 N까지의 데이터 리스트를 만들어주고, K-1번째부터 시작해서(인덱스는 0부터 시작) +K-1만큼 이동하여 pop해준다! pop해준 것은 다른 리스트에 저장하거나 프린트 데이터리스트 개수에 비해 위치가 더 크면 위치를 조정해준다! (남은 데이터 개수로 나눈 나머지) 남은 데이터 개수가 0개가 되면 결과값 Print! 결과를 저장해둔 list를 join하고 형식에 맞춰 출력하면 끝! 코드 N, K = ma..

문제/백준 2021.07.18

[릿코드/LeetCode] 342. Power of Four (파이썬3/Python3)

문제 https://leetcode.com/problems/power-of-four/ Power of Four - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 생각 우선 0이하는 무조건 false이고 1은 무조건 true 4로 열심히 나누다가 마지막에 나머지가 2또는 3이면 false, 1이면 true - 4로 더이상 나눌 수 없을 때까지 나눈다. (나머지가 4미만이면 멈춤) 나머지가 1이면 true 아니면 false - 16을 넣었을 때 나머지 바로 4미만임..

문제/릿코드 2021.07.11

[백준/BOJ] 2775번: 부녀회장이 될테야 (파이썬3/Python3)

문제 https://www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net 생각 예를 들어 0층에는 1호부터 차례대로 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, .. , 14명이 산다. 1층에는 차례대로, 1, 3, 6, 10, 15, 21, ...명이 산다. 2층 : 1 4 10 1층 : 1 3 6 0층 : 1 2 3 0층에서 1층이 만들어지는 부분을 보면 1+2 = 3 1+2+3 = 6 임을 알 수 있는데 이 6은 3+3라고 할 수 있다 1층에서 2층이 만들어지는 부분을 보면 1+3 = 4..

문제/백준 2021.07.11

[백준/BOJ] 2953번: 나는 요리사다 (파이썬3/Python3)

문제 https://www.acmicpc.net/problem/2953 2953번: 나는 요리사다 "나는 요리사다"는 다섯 참가자들이 서로의 요리 실력을 뽐내는 티비 프로이다. 각 참가자는 자신있는 음식을 하나씩 만들어오고, 서로 다른 사람의 음식을 점수로 평가해준다. 점수는 1점부터 5 www.acmicpc.net 생각 그냥... 한줄 다 더해서 찾으면 되겠넹... 코드 maxNum=0 maxIndex=0 for i in range(5): n1, n2, n3, n4 = map(int, input().split()) num = n1+n2+n3+n4 if maxNum < num: maxNum = num maxIndex = i+1 print(maxIndex, maxNum)

문제/백준 2021.07.11