CS 35

[BOJ, Python] 1157번 : 단어 공부

https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 문제 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 입력 첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다. 출력 첫째 줄에 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력한다. 단, 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다...

CS/BOJ 2022.04.30

[Python] 으뜸파이썬 6장 연습문제 20번 : list ➡ tuple, zip() 함수 활용

문제 학생의 이름과 국어, 수학, 과학 성적을 입력받아 아래 문제의 답을 출력하는 프로그램을 작성하라. 1) 튜플을 언패킹하여 수학과 과학 성적만 추출한 뒤, 학생별 수학과 과학 성적의 평균을 구하는 코드를 작성하라. 2) 위 튜플에 대하여 학생의 이름과 국어, 수학, 과학 성적의 평균 점수를 student_dic이라는 딕셔너리 구조에 넣은 후 다음과 같이 이름과 평균 성적을 출력하라. 입력 이름과 국어, 수학, 과학 성적을 입력하세요 : 박동규 88 95 90 강영민 85 90 95 박동민 70 90 80 홍승주 90 90 95 출력 학생들의 수학과 과학 성적의 평균은 각각 91.66점, 88.33점 입니다. 이름 평균성적 박동규 91.00 강영민 90.00 박동민 80.00 홍승주 91.67 풀이 실..

CS/Python 2022.04.21

[Python] 으뜸파이썬 5장 연습문제 20번 : 문자열 압축

문제 문자열 src가 'aaaabbb'와 같을 경우, 이를 압축하는 방법으로 'a4b3'와 같이 문자와 그 반복 횟수를 표시하는 방법이 있다. 문자열 'aaaabcccaaaaacccfg'은 'a4b1c4a5c3f1g1'으로 압축하는 코드를 작성하시오. 입력 src = 'aaaabbb' src = 'aaaabccccaaaaacccfg' 출력 output = 'a4b3' output = 'a4b1c4a5c3f1g1' 풀이 처음에 감을 못 잡아서 많이 헤맸던 문제입니다. 코드를 보고 나면 금방 이해가 되는 생각보다 간단한 문제였습니다. 핵심은 output[-1] 즉, ✔output의 맨 마지막 문자를 판별하는 것입니다. output[-1]을 계속 문자로 만들면서 src의 문자를 차례대로 비교합니다. src의 ..

CS/Python 2022.04.21

[BOJ, Python] 1763번 : 듣보잡

https://www.acmicpc.net/problem/1764 1764번: 듣보잡 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. www.acmicpc.net 문제 김진영이 듣도 못한 사람의 명단과, 보도 못한 사람의 명단이 주어질 때, 듣도 보도 못한 사람의 명단을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에 걸쳐 듣도 못한 사람의 이름과, N+2째 줄부터 보도 못한 사람의 이름이 순서대로 주어진다. 이름은 띄어쓰기 없이 알파벳 소문자로만 이루어지며, ..

CS/BOJ 2022.04.21

[BOJ, Python] 13015번 : 별 찍기 - 23

https://www.acmicpc.net/problem/13015 13015번: 별 찍기 - 23 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. www.acmicpc.net 문제 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. 입력 첫째 줄에 N(2 ≤ N ≤ 100)이 주어진다. 출력 규칙대로 별을 출력한다. 예제 입력 1 2 예제 출력 1 ** ** *** ** ** 예제 입력 2 5 예제 출력 2 ***** ***** * * * * * * * * * * * * * * * * * * * * * * * * * * * ***** ***** 귀도 반 로섬에게 감사하며 풀었던 문제입니다. C나 java로 풀었다면 무수한 반복문을 써야할 것 같습니다..!! 어디서 홀수 개, 짝수 개가 나오는지만 체..

CS/BOJ 2022.04.20

[BOJ, Python] 10996번 : 별 찍기 - 21

https://www.acmicpc.net/problem/10996 10996번: 별 찍기 - 21 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. www.acmicpc.net 문제 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 차례대로 별을 출력한다. 예제 입력 1 1 예제 출력 1 * 예제 입력 2 2 예제 출력 2 * * * * 예제 입력 3 3 예제 출력 3 * * * * * * * * * 예제 입력 4 4 예제 출력 4 * * * * * * * * * * * * * * * * 풀이 규칙만 찾으면 금방 푸는 문제라서 문제풀이 필기로 대체합니다. 코드는 다음과 같습니다. N = int(input()) for i in ..

CS/BOJ 2022.04.20

[BOJ, Python] 10610번 : 30

https://www.acmicpc.net/problem/10610 10610번: 30 어느 날, 미르코는 우연히 길거리에서 양수 N을 보았다. 미르코는 30이란 수를 존경하기 때문에, 그는 길거리에서 찾은 수에 포함된 숫자들을 섞어 30의 배수가 되는 가장 큰 수를 만들고 싶어한 www.acmicpc.net 문제 어느 날, 미르코는 우연히 길거리에서 양수 N을 보았다. 미르코는 30이란 수를 존경하기 때문에, 그는 길거리에서 찾은 수에 포함된 숫자들을 섞어 30의 배수가 되는 가장 큰 수를 만들고 싶어한다. 미르코를 도와 그가 만들고 싶어하는 수를 계산하는 프로그램을 작성하라. 입력 N을 입력받는다. N는 최대 105개의 숫자로 구성되어 있으며, 0으로 시작하지 않는다. 출력 미르코가 만들고 싶어하는 ..

CS/BOJ 2022.04.20

[BOJ, Python] 2941번 : 크로아티아 알파벳

https://www.acmicpc.net/problem/2941 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net 문자열을 활용한 구현 문제입니다. 문제 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= 예를 들어, ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루어..

CS/BOJ 2022.04.20

[BOJ, Python] 1316번 : 그룹 단어 체커

https://www.acmicpc.net/problem/1316 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 문자열을 활용한 구현 문제입니다. 문제 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때문에 그룹 단어이지만, aabbbccb는 b가 떨어져서 나타나기 때문에 그룹 단어가 아니다. 단어 N개를 입..

CS/BOJ 2022.04.20

[Python] Sequence 자료형(튜플, 딕셔너리, 집합), zip() 함수

파이썬에는 sequence 자료형이라는 자료형이 있습니다. 하나의 변수에 여러 데이터를 저장할 때 사용하고 리스트(list), 튜플(tuple), 딕셔너리(dcitionary), 집합(set)이 있습니다. 본 게시글은 개인 공부를 기록하는 게시글이며 문법상 오류가 있을 수 있습니다. 튜플 튜플은 리스트와 비슷하게 쓰이지만 다른 점이 몇 가지 있습니다. 1. 튜플은 소괄호 ()안에 data를 넣어서 선언하며, 한 개의 data만 넣을 때는 (1, ) 처럼 data 뒤에 콤마(,)를 써줘야합니다. 2. 튜플은 리스트와 달리 한번 정해진 요소와 요소의 순서를 바꿀 수 없습니다. 튜플 내부의 객체를 변경하거나 삭제할 수 없으며 이를 교환불가능(immutable) 속성이라고 합니다. 그래서 프로그램이 실행되면서 ..

CS/Python 2022.04.19