반응형

분류 전체보기 338

백준 BAEKJOON 31832번 팀명 정하기 2 [PYTHON/파이썬]

백준 BAEKJOON 31832번 팀명 정하기 2 [PYTHON/파이썬] (BRONZE Ⅱ)https://www.acmicpc.net/problem/31832       처음엔 for 문 안에서 세 가지 조건을 다 대입하려다가조건이 꼬여서 히든 케이스를 잡지 못했다.결국에는 조건 하나하나마다 함수를 만들어서 풀게 되었다.함수를 통해 세 가지 조건 모두 참인 팀명이 정답이 되는 것이다. ※ 알파벳 대문자, 알파벳 소문자, 숫자, 하이픈의 아스키코드는 각각 65-90, 97-122, 48-57, 45이다.  첫 번째 조건, 대문자가 소문자보다 많으면 안 된다.결국 소문자는 대문자보다 크거나 같아야 한다.나는 for 문과 ord 함수를 사용하여 대문자와 소문자 개수를 파악하였다.  두 번째 조건, 팀명은 10..

ALGORITHM/PYTHON 2024.06.02

백준 BAEKJOON 31831번 과민성 대장 증후군 [PYTHON/파이썬]

백준 BAEKJOON 31831번 과민성 대장 증후군 [PYTHON/파이썬] (BRONZE Ⅲ)https://www.acmicpc.net/problem/31831        스트레스 변화량에 맞춰서 for 문을 활용하면 쉽게 구현할 수 있다.스트레스 양이 0 아래로 내려가지 않으니0보다 낮게 되면 스트레스 양을 0으로 초기화시키고복통을 겪게 되는 스트레스 양 M 이상이면 복통을 겪게 되는 일 수에 더해주면 된다.       N, M = map(int, input().split())A = list(map(int, input().split()))level = 0result = 0for i in A: level += i if level = M: # M 이상이면 결괏값에 +1 resu..

ALGORITHM/PYTHON 2024.06.01

백준 BAEKJOON 31823번 악질 검거 [PYTHON/파이썬]

백준 BAEKJOON 31823번 악질 검거 [PYTHON/파이썬] (BRONZE Ⅰ)https://www.acmicpc.net/problem/31823       먼저 최대 리버스-스트릭을 구하기 위한 set 집합을 선언하였다.동아리원 수에 맞춰서 for 문을 돌렸고이들의 활동 기록과 이름을 받은 뒤에최장 리버스-스트릭을 구하기 위해 다시 한 번 for 문을 돌렸다.       N, M = map(int, input().split())countStreak = set() # 최대 리버스-스트릭KPSC_List = [] # 최장 리버스-스트릭, 이름을 저장할 리스트for _ in range(N): record = input().split() streak, name = record[:M], re..

ALGORITHM/PYTHON 2024.05.26

백준 BAEKJOON 31833번 온데간데없을뿐더러 [PYTHON/파이썬]

백준 BAEKJOON 31833번 온데간데없을뿐더러 [PYTHON/파이썬] (BRONZE Ⅲ)https://www.acmicpc.net/problem/31833      A와 B를 문자열인 리스트로 입력을 받은 후join 함수를 사용하여 합친 문자열을 만들었다.그리고 다시 int 형으로 변환 시켜준 뒤if 문을 사용하여 A와 B를 비교하여 작은 값을 출력하였다.      N = int(input())A = int("".join(input().split()))B = int("".join(input().split()))if A

ALGORITHM/PYTHON 2024.05.24

백준 BAEKJOON 31822번 재수강 [PYTHON/파이썬]

백준 BAEKJOON 31822번 재수강 [PYTHON/파이썬] (BRONZE Ⅳ)https://www.acmicpc.net/problem/31822       재수강할 과목 코드의 앞 5자리가 일치하는지 확인 후결괏값에 더해준 뒤 재수강으로 인정되는 과목의 개수를 출력하면 된다.       subjectCode = input()N = int(input())result = 0for _ in range(N): availableCode = input() if subjectCode[:5] == availableCode[:5]: result += 1print(result)

ALGORITHM/PYTHON 2024.05.22

백준 BAEKJOON 31776번 예비 소집 결과 보고서 [PYTHON/파이썬]

백준 BAEKJOON 31776번 예비 소집 결과 보고서 [PYTHON/파이썬] (BRONZE Ⅲ)https://www.acmicpc.net/problem/31776      입력된 시간이 -1인 경우는 문제를 해결하지 않은 것으로 간주하고, 최대 시간인 121로 설정한다. (입력 조건 확인)그리고 문제를 풀 때 번호가 작은 순서대로 풀었는지 확인하여조건에 맞는 팀의 수를 결과로 출력하면 된다.       N = int(input())result = 0for _ in range(N): solve = list(map(int, input().split())) if sum(solve) == -3: # 만약 모든 문제를 해결하지 않은 팀이라면 다음 팀으로 넘어감 continue f..

ALGORITHM/PYTHON 2024.05.16

백준 BAEKJOON 31821번 학식 사주기 [PYTHON/파이썬]

백준 BAEKJOON 31821번 학식 사주기 [PYTHON/파이썬] (BRONZE Ⅳ)https://www.acmicpc.net/problem/31821       입력 순서대로 학식 가격을 리스트에 저장한 뒤새내기들이 먹고 싶어 하는 메뉴의 번호의 가격을결괏값에 더해줬다.      N = int(input())menu = [int(input()) for _ in range(N)]result = 0M = int(input())for _ in range(M): eatMenu = int(input()) result += menu[eatMenu - 1]print(result)

ALGORITHM/PYTHON 2024.05.15

백준 BAEKJOON 31798번 단원평가  [PYTHON/파이썬]

백준 BAEKJOON 31798번 단원평가 [PYTHON/파이썬] (BRONZE Ⅲ)https://www.acmicpc.net/problem/31798      위의 수 두 개 중 하나라도 0이라면아래 수의 제곱에서 나머지 수를 빼주면 된다.아래 수가 0이라면위의 수 두 개를 더한 뒤 루트를 씌워주면 된다.루트는 1/2 제곱을 해주면 된다.       a, b, c = map(int, input().split())if a == 0: print(int(c**2 - b))elif b == 0: print(int(c**2 - a))elif c == 0: print(int((a + b) ** (1 / 2)))

ALGORITHM/PYTHON 2024.05.09

백준 BAEKJOON 31789번 모험의 시작 [PYTHON/파이썬]

백준 BAEKJOON 31789번 모험의 시작 [PYTHON/파이썬] (BRONZE Ⅲ)https://www.acmicpc.net/problem/31789       4인조가 가진 돈 X와 후안의 공격력 S에 맞춰무기를 살 수 있는지 확인하여 4인조가 모험을 떠날 수 있게 도와주자!       N = int(input())X, S = map(int, input().split())weaponInfo = [list(map(int, input().split())) for _ in range(N)]result = Falsefor c, p in weaponInfo: if c S: result = True breakif result: print("YES")else: pri..

ALGORITHM/PYTHON 2024.05.08

백준 BAEKJOON 31775번 글로벌 포닉스 [PYTHON/파이썬]

백준 BAEKJOON 31775번 글로벌 포닉스 [PYTHON/파이썬] (BRONZE Ⅳ)https://www.acmicpc.net/problem/31775      bool 자료형으로 접근했다.세 문자열 각각 0번째 인덱스에 접근하여시작하는 글자가 'l', 'k', 'p' 인지 확인 후조건에 맞춰 결과를 출력하였다.      Global_Ponix = [input() for _ in range(3)]l = k = p = Falsefor i in Global_Ponix: if i[0] == "l": l = True elif i[0] == "k": k = True elif i[0] == "p": p = Trueif l == k == p == True: ..

ALGORITHM/PYTHON 2024.05.01
반응형