본문 바로가기

전체 글

(60)
[BAEKJOON/Python3] 백준 1316 그룹 단어 체커 https://www.acmicpc.net/problem/1316 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net *링크로 접속하여 문제를 확인할 수 있습니다. 문제 설명 단어에 존재하는 문자들에 대해서는 각 문자가 모두 연속인 단어를 그룹 단어라고 칭한다. cccaab는 c,a,b가 각각 연속해서 나타나기 때문에 그룹 단어이고, accaab는 a가 떨어져서 나타나기 때문에 그룹 단어가 아닌 것이다. 첫째 줄에 입력될 단어의 개수 N이 입력되고, 다음 N개의 줄에 N개의 단어가..
[BAEKJOON/Python3] 백준 10845 큐 https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net *링크로 접속하여 문제를 확인할 수 있습니다. 문제 설명 FIFO(First In First Out) 구조로 되어 있는 자료구조 Queue를 구현하는 문제이다. FIFO는 가장 먼저 push로 들어간 요소가 pop하면 가장 먼저 나오도록 하는 구조이다. 이 문제에선 push, pop, size, empty, front, back 6가지 명령을 수행하는 큐 자료구조를 구현해야 한다...
[BAEKJOON/Python3] 백준 1920 수 찾기 https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들 www.acmicpc.net *링크로 접속하여 문제를 확인할 수 있습니다. 문제 설명 첫째 줄에 N, 둘째 줄의 N개의 숫자가 주어지고, 세번째 줄에 M, 네번째 줄에 M개의 숫자가 주어질 때, M개의 숫자 각각이 N개의 숫자의 배열인 A에 존재하는지를 확인하는 문제이다. M개의 숫자 각각을 리스트 A에서 찾고, 존재하면 1, 존재하지 않으면 0을 한줄씩 출력해야 한다. 코드 ..
[BAEKJOON/Python3] 백준 10039 평균 점수 https://www.acmicpc.net/problem/10039 10039번: 평균 점수 입력은 총 5줄로 이루어져 있고, 원섭이의 점수, 세희의 점수, 상근이의 점수, 숭이의 점수, 강수의 점수가 순서대로 주어진다. 점수는 모두 0점 이상, 100점 이하인 5의 배수이다. 따라서, 평균 점 www.acmicpc.net *링크로 접속하여 문제를 확인할 수 있습니다. 문제 설명 5명의 점수를 입력으로 받고, 입력받은 수들의 평균을 구하여 간단하게 해결할 수 있는 문제이다. 코드 문제에서는 입력이 5줄로 각각의 점수가 주어진다고 했기 때문에 for문을 이용해 점수를 입력받고 score라는 리스트에 저장하도록 했다. 이 때 40점 이상인 경우는 그대로 점수를 넣도록, 40점 미만인 경우 그냥 40을 넣도록..
[BAEKJOON/Python3] 백준 2438 별 찍기 - 1 www.acmicpc.net/problem/2438 2438번: 별 찍기 - 1 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 www.acmicpc.net *링크로 접속하여 문제를 확인할 수 있습니다. N을 입력받아 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 순차적으로 찍어야 합니다. 코드 N을 입력받아 정수형으로 변환하고 인덱스는 0부터 N-1까지이므로 for 반복문을 이용하여 별을 순차적으로 출력합니다.
[BAEKJOON/Python3] 백준 15656 N과 M (7) www.acmicpc.net/problem/15656 15656번: N과 M (7) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net *링크로 접속하여 문제를 확인할 수 있습니다. 백트랙킹을 이용해서 해결하는 N과 M 7번째 문제입니다. N개의 수 중에서 M개를 고르고 같은 것을 골라도 되며 중복되지 않게 사전 증가 순으로 출력합니다. N과 M (3) 과 비슷하지만 다른 점이 있다면 (3)은 4개중에서 선택이면 1,2,3,4 중에서 선택으로 해결하는 문제였다면 이 문제는 값들이 따로 주어진다는 것입니다. 방식은 같지만 사용할 수들을 ..
[BAEKJOON/Python3] 백준 1152 단어의 개수 www.acmicpc.net/problem/1152 1152번: 단어의 개수 첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 www.acmicpc.net *링크로 접속하여 문제를 확인할 수 있습니다. 영어 대소문자와 띄어쓰기만으로 이루어진 문자열이 주어지면 이 문자열에 단어가 몇 개 있는지 출력하는 문제입니다. 파이썬을 이용해서 간단하게 이용할 수 있는 문제입니다. 코드 입력받은 문자열을 공백 기준으로 나누어 리스트로 만들면 리스트에는 문자열의 각 단어가 쪼개져 들어갈 것 입니다. 이 리스트의 길이가 곧 단어의 개수이기 때문에 그대로 출력하면 됩니다.
[BAEKJOON/Python3] 백준 4344 평균은 넘겠지 www.acmicpc.net/problem/4344 4344번: 평균은 넘겠지 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. www.acmicpc.net *링크로 접속하여 문제를 확인할 수 있습니다. n명의 점수가 주어질 때 평균을 넘는 학생들의 비율을 퍼센트로 출력해야 합니다. 그냥 순차적으로 평균을 구하고, 평균을 넘는 학생의 수를 구하여 비율을 구하여 퍼센트로 출력하는 단순한 방법을 이용해 해결했습니다. 코드 퍼센트를 구해 출력하는 것을 함수로 만들었습니다. 학생 수 n과 n명의 점수를 한 번에 입력 받아 n만 분리해주고 점수의 합을 구하고 학생 수로 나누어 평균을 구한 뒤, 평균을 넘는 학생 수를 for문을 통해 구하고 퍼센트를 구..