728x90

2022/01 56

[Python]백준 BaekJoon.AC 8958 : OX퀴즈(for문)

https://www.acmicpc.net/problem/8958 8958번: OX퀴즈 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수 www.acmicpc.net 슬슬 문제가 까다로워지기 시작한 느낌..? for문과 if문을 여러번 쓰기 시작했다ㅎㅎ string을 입력받아 각각 쪼개 list에 넣어야 했다. map도 써봤다가, split도 써봤다가, 모두 안되길래 찾아봤다. 그냥 input을 받으면 쪼개지는 거였다. 앞선 문제 풀 때 생각했던 점인데.. 잘 기억해둬야겠다. T = int(input()) for i in range(T): ..

[Python]BaekJoon.AC 2022.01.03

[Python]백준 BaekJoon.AC 3052 : 나머지(list, set)

https://www.acmicpc.net/problem/3052 3052번: 나머지 각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다. www.acmicpc.net for문을 이용해 list에 숫자 10개를 저장해줬고, set으로 타입을 변경해줬다. set은 중복을 알아서 제거해주기 때문이다. 글을 작성하며 든 생각인데, 애초에 set에 숫자를 받아도 됐을 것 같다..? list = [] for i in range(10): list.append(int(input()) % 42) over = set(list) print(len(over))

[Python]BaekJoon.AC 2022.01.03

[Python]백준 BaekJoon.AC 2920 : 음계(list)

https://www.acmicpc.net/problem/2920 2920번: 음계 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8 www.acmicpc.net hmm... 완성하고 보니 좀 복잡해보이긴 하다만... 다른 사람 코드 그냥 패스.. 겉 if문 대신 switch문을 사용하고 싶었는데, 파이썬에는 switch가 없었다...! 그냥 if 사용해 분류해줬다. A = list(map(int, input().split())) if A[0]==1: for i in range(1, 8): if A[i]-1 != A..

[Python]BaekJoon.AC 2022.01.02

[Python]백준 BaekJoon.AC 2908 : 상수(slice([::-1]), reverse())

https://www.acmicpc.net/problem/2908 2908번: 상수 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 www.acmicpc.net [::-1]는 String이나 리스트 등에 적용하면 이를 간단히 뒤집어준다. int는 안된다.. [start : stop : step] 형식으로 사용하고 for문 range() 조건처럼 생각하면 쉽다. 원래 입력값을 리스트에 넣고 reverse()를 이용해 뒤집으려 하였으나, 이거 하나 하자고 리스트에 넣기가...? 싫었다..ㅎ reverse()는 String은 뒤집어주지 않기에.. 원한다면 A = list(..

[Python]BaekJoon.AC 2022.01.02

[Python]백준 BaekJoon.AC 2675 : 문자열 반복(for문)

https://www.acmicpc.net/problem/2675 2675번: 문자열 반복 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다 www.acmicpc.net T = int(input()) for i in range(T): R, S = map(str, input().split()) for n in S: print(n * int(R), end="") print('') ++) 지식 더하기 input()은 줄 단위로 입력을 받아버린다. 공백이 있든 말든 무조건 받아주는 멋진 친구다. 그래서 이를 리스트에 넣어준다면, 공백도 한자리를 든든하게 차지하는..

[Python]BaekJoon.AC 2022.01.02

[Python]백준 BaekJoon.AC 2577 : 숫자의 개수(for문, list)

https://www.acmicpc.net/problem/2577 2577번: 숫자의 개수 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 크거나 같고, 1,000보다 작은 자연수이다. www.acmicpc.net 파이썬에는 배열 개념이 없어서.. 아직 헷갈린다.. list를 배열처럼 사용했는데, 효율적인 방법은 아니다. 혹시나 싶어서 int(input())을 세번 받아서 곱해봤는데 실행되서 놀랐다!ㅋㅋㅋ 간편함은 정말 굿.. 곱한 값을 string으로 바꿔 한 글자씩 꺼내줬고, 이에 해당하는 list 값을 늘려주는 방식으로 진행했다. list()는 str같은 오브를 받는 것 같고, 한 글자씩 넣어주는 것 같다.(아직 더 연구가 필요함..) list = [0,0..

[Python]BaekJoon.AC 2022.01.01
728x90