728x90 구현56 [python] 백준 17471 게리맨더링 https://www.acmicpc.net/problem/17471 17471번: 게리맨더링 선거구를 [1, 4], [2, 3, 5, 6]으로 나누면 각 선거구의 인구는 9, 8이 된다. 인구 차이는 1이고, 이 값보다 더 작은 값으로 선거구를 나눌 수는 없다. www.acmicpc.net 문제 해결 삼성 A형 기출문제 딱 봐도 완전탐색 문제이다.(2 ≤ N ≤ 10, 1 ≤ 구역의 인구 수 ≤ 100) 문제는 combination을 사용하여 모든 경우의 수를 다 고민을 해야하나인데... 맞다. 1개부터 n//2 개까지 선거구를 뽑은 다음 다 연결 되었는지 확인하고 나머지 선거구끼리도 모두 연결되었는지 확인해야한다. 모두 연결이 되면 두 집단의 인구 차이를 이전과 비교해서 작은 값을 저장한다. 삼성은 i.. 2023. 4. 26. [python] 백준 2621 카드게임 https://www.acmicpc.net/problem/2621 2621번: 카드게임 근우는 오늘 재미있는 카드 게임을 배우고 있다. 카드는 빨간색, 파란색, 노란색, 녹색의 네 가지 색이 있고, 색깔별로 1부터 9까지 숫자가 쓰여진 카드가 9장씩 있다. 카드는 모두 36(=4x9)장이다. www.acmicpc.net 문제 해결 전형적인 구현 문제 메모르도 가장 적게 쓰면서 시간복잡도를 줄이고 싶었다. 하지만 생각보다 많은 부분을 정의하고 조건 나온대로 푸는 것이 가장 깔끔하고 잘 풀렸다. 카드 모양별 개수, 카드 숫자별 갯수, 카드 숫자대로 배열 등 여러가지 정의하고 들어가야 편하다. CODE from collections import defaultdict # R, B, Y, G nums = defa.. 2023. 4. 21. [python] 백준 1371 가장 많은 글자 https://www.acmicpc.net/problem/1371 1371번: 가장 많은 글자 첫째 줄부터 글의 문장이 주어진다. 글은 최대 50개의 줄로 이루어져 있고, 각 줄은 최대 50개의 글자로 이루어져 있다. 각 줄에는 공백과 알파벳 소문자만 있다. 문장에 알파벳은 적어도 하나 이 www.acmicpc.net 문제 해결 문제를 해결하는 방식은 전체 문자열을 이어붙여서 나오는 알파벳 양이 많은 것을 리스트에 넣고 sort() 정렬시키면 될 것이다. 하지만 문장이 50줄 이하라는 것만 알고 몇줄이 주어질지 모르는 상황에서 input을 어떻게 하는지 어려웠다. 정답은 input= sys.stdin.read를 통해 조건없는 문자열 개수를 입력할 수 있다는 것을 알 수 있었다. CODE import sy.. 2023. 4. 14. [python] 백준 4569 비밀번호 발음하기 https://www.acmicpc.net/problem/4659 4659번: 비밀번호 발음하기 좋은 패스워드를 만드는것은 어려운 일이다. 대부분의 사용자들은 buddy처럼 발음하기 좋고 기억하기 쉬운 패스워드를 원하나, 이런 패스워드들은 보안의 문제가 발생한다. 어떤 사이트들은 xvtp www.acmicpc.net 문제 해결 주어진 조건을 하나씩 살펴보며 걸리는 것이 있으면 변수를 0에서 1로 변환시켜(bool 기호) 만들 수 없다고 출력 그냥 구현문제. 빠진 조건 없는지 확인하기 CODE vowel = ['a', 'e', 'i', 'o', 'u'] while True: string = input().rstrip() if string == 'end': break spells = list(string) .. 2023. 4. 12. 이전 1 ··· 7 8 9 10 11 12 13 14 다음 728x90