본문 바로가기
카테고리 없음

프로그래머스 PCCE 기출문제 파이썬 3/4

by 피갓자 2025. 5. 24.

프로그래머스
프로그래머스

문자 출력

문제 설명

주어진 코드는 변수에 데이터를 저장하고 출력하는 코드입니다. 아래와 같이 출력되도록 빈칸을 채워 코드를 완성해 주세요.

출력 예시

3
2
1
Let's go!

solution.py 빈칸 채우기 문제

message = "     "

print("3   2   1")
print(message)
message = "Let's go!"

print("3\n2\n1")
print(message)

각도 합치기

문제 설명

일반적으로 두 선분이 이루는 각도는 한 바퀴를 360도로 하여 표현합니다. 따라서 각도에 360의 배수를 더하거나 빼더라도 같은 각을 의미합니다. 예를 들면, 30도와 390도는 같은 각도입니다.

주어진 코드는 각도를 나타내는 두 정수 angle1과 angle2가 주어질 때, 이 두 각의 합을 0도 이상 360도 미만으로 출력하는 코드입니다. 코드가 올바르게 작동하도록 한 줄을 수정해 주세요.

제한사항

  • 0 ≤ angle1 ≤ 5000
  • 0 ≤ angle2 ≤ 5000

입출력 예

입력 #1

280
485

 

출력 #1

45

입출력 예 설명

입출력 예 #1

  • angle1과 angle2의 합은 765도이고, 765를 720을 빼면 45도이므로 45를 출력합니다.

solution.py 디버깅(Debugging) 문제

angle1 = int(input())
angle2 = int(input())

sum_angle = angle1 + angle2
print(sum_angle)
angle1 = int(input())
angle2 = int(input())

sum_angle = (angle1 + angle2) % 360
print(sum_angle)

수 나누기

문제 설명

2자리 이상의 정수 number가 주어집니다. 주어진 코드는 이 수를 2자리씩 자른 뒤, 자른 수를 모두 더해서 그 합을 출력하는 코드입니다. 코드가 올바르게 작동하도록 한 줄을 수정해 주세요.

제한사항

  • 10 ≤ number ≤ 2,000,000,000
    • number의 자릿수는 2의 배수입니다.

입출력 예

입력 #1

4859

 

출력 #1

107

 

입력 #2

29

 

출력 #2

29

입출력 예 설명

입출력 예 #1

  • 입력된 수를 2자리씩 나눠 합치면 다음과 같습니다.
  • 48 + 59 = 107

입출력 예 #2

  • 입력된 수를 2자리씩 나눠 합치면 다음과 같습니다.
  • 29  = 29

solution.py 디버깅(Debugging) 문제

number = int(input())

answer = 0

for i in range(1):
    answer += number % 100
    number //= 100

print(answer)
number = int(input())

answer = 0

while number > 0:
    answer += number % 100
    number //= 100

print(answer)

병과분류

문제 설명

퓨쳐종합병원에서는 접수한 환자가 진료받을 병과에 따라 자동으로 환자 코드를 부여해 주는 프로그램이 있습니다. 환자 코드의 마지막 네 글자를 보면 환자가 어디 병과에서 진료를 받아야 할지 알 수 있습니다. 예를 들어 환자의 코드가 "_eye"로 끝난다면 안과를, "head"로 끝난다면 신경외과 진료를 보게 됩니다. 환자 코드의 마지막 글자에 따른 병과 분류 기준은 다음과 같습니다.

마지막 글자 병과
"_eye" "Ophthalmologyc"
"head" "Neurosurgery"
"infl" "Orthopedics"
"skin" "Dermatology"

환자의 코드를 나타내는 문자열 code를 입력받아 위 표에 맞는 병과를 출력하도록 빈칸을 채워 코드를 완성해 주세요. 위 표의 단어로 끝나지 않는다면 "direct recommendation"를 출력합니다.

제한사항

  • 4 ≤ code의 길이 ≤ 20
  • code는 영어 소문자와 숫자, 언더바("_")로 이루어져 있습니다.

입출력 예

입력 #1

dry_eye

 

출력 #1

Ophthalmologyc

 

입력 #2

pat23_08_20_head

 

출력 #2

Neurosurgery

입출력 예 설명

입출력 예 #1

  • code가 "_eye"로 끝나기 때문에 "Ophthalmologyc"를 출력합니다.

입출력 예 #2

  • code가 "head"로 끝나기 때문에 "Neurosurgery"를 출력합니다.

solution.py 빈칸 채우기 문제

code = input()
last_four_words = code[-4:]

if last_four_words ==       :
    print("Ophthalmologyc")
elif                          :
    print("Neurosurgery")
elif                          :
    print("Orthopedics")
                              :
    print("Dermatology")
     :
    print("direct recommendation")
code = input()
last_four_words = code[-4:]

if last_four_words == "_eye":
    print("Ophthalmologyc")
elif last_four_words == "head":
    print("Neurosurgery")
elif last_four_words == "infl":
    print("Orthopedics")
elif last_four_words == "skin":
    print("Dermatology")
else:
    print("direct recommendation")

심폐소생술

문제 설명

심폐소생술은 다음과 같은 순서를 통해 실시합니다.

  1. 심정지 및 무호흡 확인 [check]
  2. 도움 및 119 신고 요청 [call]
  3. 가슴압박 30회 시행 [pressure]
  4. 인공호흡 2회 시행 [respiration]
  5. 가슴압박, 인공호흡 반복 [repeat]

주어진 solution 함수는 심폐소생술을 하는 방법의 순서가 담긴 문자열들이 무작위 순서로 담긴 리스트 cpr이 주어질 때 각각의 방법이 몇 번째 단계인지 순서대로 담아 return하는 함수입니다. solution 함수가 올바르게 작동하도록 빈칸을 채워 solution 함수를 완성해 주세요.

제한사항

  • cpr은 다음 문자열들이 한 번씩 포함되어 있습니다.
    • "check", "call", "pressure", "respiration", "repeat"

입출력 예

cpr result
["call", "respiration", "repeat", "check", "pressure"] [2, 4, 5, 1, 3]
["respiration", "repeat", "check", "pressure", "call"] [4, 5, 1, 3, 2]

입출력 예 설명

입출력 예 #1

  • "call", "respiration", "repeat", "check", "pressure"은 각각 2, 4, 5, 1, 3 번째 순서이므로 [2, 4, 5, 1, 3]을 리턴합니다.

입출력 예 #2

  • "respiration", "repeat", "check", "pressure", "call"은 각각 4, 5, 1, 3, 2 번째 순서이므로 [4, 5, 1, 3, 2]를 리턴합니다.

solution.py 빈칸 채우기 문제

def solution(cpr):
    answer = []
    basic_order = ["check", "call", "pressure", "respiration", "repeat"]
    for action in      :
        for i in                        :
            if action == basic_order[i]:
                answer.append(     )
    return answer
def solution(cpr):
    answer = []
    basic_order = ["check", "call", "pressure", "respiration", "repeat"]
    for action in cpr:
        for i in range(len(basic_order)):
            if action == basic_order[i]:
                answer.append(i + 1)
    return answer