목록python (21)
코딩딩딩

1. 소개 이번 페이지에서 데이터를 수집할 대상은 현재까지 누적된 로또당첨번호 숫자들이다. 어떤 숫자가 많이 뽑혔고 어떤 숫자가 적게 뽑혔는지 궁금했다. 과거의 당첨번호 정보를 공개하고 있는 동행복권 공식 사이트를 이용하여 데이터를 수집하였다. https://www.dhlottery.co.kr/gameResult.do?method=byWin 로또6/45 - 회차별 당첨번호 1054회 당첨결과 (2023년 02월 11일 추첨) 당첨번호 14 19 27 28 30 45 1054회 순위별 등위별 총 당첨금액, 당첨게임 수, 1게임당 당첨금액, 당첨기준, 비고 안내 순위 등위별 총 당첨금액 당첨게임 수 1게임 www.dhlottery.co.kr 2. 전체 코드 import time import pymysql f..

https://www.acmicpc.net/problem/1316 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 1. 문제 설명 같은 알파벳별로 떨어져 있지 않고 나란히 있는 단어를 그룹단어로 정의하며, 그룹단어의 개수를 구하는 문제 2. 문제 풀이 그룹단어를 결정하는 중요한 점은 각 알파벳별로 나란히 있어야 하는 점이다. 그러므로 나란히 있지 않을 때를 찾아주면 된다. 먼저, 알파벳 26개를 방문했는지 여부를 배열을 활용하여 판단한다. (0: 미방문 1: 방문) charac..

https://www.acmicpc.net/problem/2292 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 1. 문제 설명 위의 그림처럼 규칙적으로 벌집에 번호가 부여될 때, 특정 번호의 방으로 갈 때 거쳐가는 방의 최소 개수를 구하는 문제 2. 문제 풀이 N의 최대 크기가 상당히 크기 때문에 배열을 이용한 문제는 비효율적이다. 벌집의 번호가 부여되는 규칙을 살펴본 결과 아래와 같은 규칙이 있었다. 1번 방을 중심으로 하여 한 칸씩 갈 때마다 방의 개수가 6개, 12개, 18개... 즉, 6의 배수만큼 점점 늘..

https://www.acmicpc.net/problem/6603 6603번: 로또 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있다. 첫 번째 수는 k (6 < k < 13)이고, 다음 k개 수는 집합 S에 포함되는 수이다. S의 원소는 오름차순으로 www.acmicpc.net 1. 문제 설명 입력받은 수들 중에서 만들 수 있는 로또 번호의 모든 경우의 수를 출력하는 문제 2. 문제 풀이 번호들을 리스트에 저장하고 combinations함수를 이용하여 6개를 선택하는 모든 경우의 수를 저장한다. numbers = list(input().split()) combination_numbers_list = combinations(numbers[1:len(numbers..

https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 1. 문제 설명 입력받은 단어에 대해서 가장 많이 사용된 알파벳을 구하는 문제 2. 문제 풀이 리스트에 알파벳 종류별로 개수를 저장한다. word = input() alphabet = [0 for _ in range(26)] #알파벳 개수 저장 for i in range(len(word)): if word[i] >= 'A' and word[i] = 'A' and word[i]

https://www.acmicpc.net/problem/2581 2581번: 소수 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다. www.acmicpc.net 1. 문제 설명 M ~ N 사이의 소수 중에서 최솟값과 그 수들의 합을 구하는 문제 2. 문제 풀이 두 수 사이를 차례대로 (2 ~ 그 수보다 1 작은 수)로 나누어 주면서 소수인지 아닌지 판단한다. 단, 1은 소수가 아니라는 사실에 주의한다. for i in range(m, n + 1): flag = 0#flag = 0 -> 소수이다 for j in range(2, i): if i % j == 0: #소수..