조건문

Programming/Coding Problem

BOJ 2577번 : 숫자의 개수

안녕하세요. 지난 포스팅의 BOJ 2562번 : 최댓값에서는 굳이 1차원 배열을 사용하지 않고 문제를 풀어보았습니다. 오늘은 1차원 배열을 적용해서 다른 문제를 풀어보도록 하겠습니다. 핵심 포인트 반복문 1차원 배열 : 리스트 자료형 제출 코드 number = int(input()) * int(input()) * int(input()) count = [0] * 10 while True : count[number % 10] += 1 number //= 10 if number == 0 : for i in count : print(i) break 해설 기본적으로 입력은 한 줄에 한 개씩 총 3개의 숫자를 입력받습니다. 하지만, 저희가 궁극적으로 필요한 것은 3개의 숫자의 곱셈이기 때문에 int(input())..

Programming/Coding Problem

BOJ 2562번 : 최댓값

안녕하세요. 지난 포스팅의 BOJ 10818번 : 최소, 최대에서는 파이썬 1차원 배열인 리스트 자료형의 내장함수인 max 함수와 min 함수를 이용해서 문제를 풀어보았습니다. 오늘도 역시 최댓값을 출력하는 문제이지만 다른 점은 항상 9개의 숫자를 받는 다는 점과 최댓값이 몇 번째로 입력받았는지까지 출력해야합니다. 핵심 포인트 반복문 제출 코드 max_idx = 0 max_value = 0 for idx in range(9) : tmp = int(input()) if tmp >= max_value : max_value = tmp max_idx = idx + 1 print(max_value) print(max_idx) 해설 해당 문제는 1차원 배열 파트에 들어가있긴 하지만 리스트 자료형을 사용하지 않고도 ..

Programming/Coding Problem

BOJ 1110번 : 더하기 사이클

안녕하세요. 지난 포스팅의 BOJ 10951번 : A + B - 4에서는 while문과 예외처리 구문(try ~ except ~)를 이용해서 문제를 풀어보았습니다. 오늘은 반복문을 중심으로 하는 마지막 문제를 풀어보도록 하겠습니다. 핵심 포인트 반복문 : while문 조건문 일단, 문제의 예제를 통해 생각해보도록 하겠습니다. 26이 입력된다고 가정하죠. 그러면 아래의 과정으로 새로운 숫자가 만들어집니다. 1. 새로운 수의 십의 자리 = 26의 일의 자리 = 6 2. 새로운 수의 일의 자리 = 26의 십의 자리 + 26의 일의 자리 = 6 + 2 = 8 따라서, 새로운 수는 68이 됩니다. 하지만 28 $\neq$ 68이기 때문에 한번 더 해보도록 하죠. 1. 새로운 수의 십의 자리 = 68의 일의 자리 ..

Programming/Coding Problem

BOJ 10952번 : A + B - 5

안녕하세요. 지난 포스팅의 BOJ 10871번 : X보다 작은 수에서는 반복문과 조건문을 함께 이용해서 문제를 풀어보았습니다. 오늘도 지난 문제와 동일하게 반복문과 조건문을 함께 활용하지만 while문을 이용해서 문제를 풀어보도록 하겠습니다. 핵심 포인트 반복문 : while문 조건문 기본적으로 for문은 반복의 끝이 언제 들어올 지 정해진 경우에 적용합니다. 예를 들어, N번의 반복을 한다고 명시가 되어 있는 경우죠. 하지만, 어떤 문제는 반복의 끝이 언제인지 알 수 없는 경우가 많습니다. 어쩌면 특정 조건을 만족해야만 반복문을 탈출할 수 있습니다. while문은 이와 같은 경우에 활용할 수 있습니다. while True : A, B = map(int, input().split()) if A == B ..

Programming/Coding Problem

BOJ 10871번 : X보다 작은 수

안녕하세요. 지난 포스팅의 BOJ 2439번 : 별 찍기 - 2에서는 예제 출력의 패턴을 분석한 뒤 반복문을 활용하여 문제를 해결해보았습니다. 오늘은 반복문과 조건문을 함께 사용하여 문제를 풀어보도록 하겠습니다. 핵심 포인트 반복문 : for문 조건문 N, X = map(int, input().split()) numbers = map(int, input().split()) for number in numbers : if number < X : print(number, end = ' ') 일단 문제의 입력은 첫번째 줄에 N과 X가 들어가고 두번째 줄에는 N개의 정수가 담긴 배열인 numbers를 입력으로 받습니다. 일단, 첫번째 줄과 두번째 줄 모두 map(int, input().split()) 을 이용해..

Programming/Coding Problem

BOJ 2480번 : 주사위 세개

안녕하세요. 지난 포스팅의 BOJ 2525번 : 오븐 시계에서는 복잡한 시간 문제를 조건문을 활용하여 풀어보았습니다. 오늘도 역시 조건문을 활용한 문제를 풀어보도록 하겠습니다. 핵심 포인트 조건문 max 함수 문제에 조건에 따르면 3개의 주사위 눈의 숫자(A, B, C)를 비교해야합니다. 따라서, 조건문에 따라서 받을 상금을 나누어야한다는 것을 예측해볼 수 있습니다. - 3개의 주사위 눈의 숫자가 전부 같을 때 : A == B == C - 3개 중 2개의 주사위 눈의 숫자가 같을 때 : A == B or B == C or C == A - 3개의 주사위 눈의 숫자가 전부 다를 때 : 위 조건에 만족하지 않으면 됨 $\rightarrow$ else문 마지막으로 3개의 주사위 눈의 숫자가 전부 다를 때 가장 ..

Programming/Coding Problem

BOJ 2525번 : 오븐 시계

안녕하세요. 지난 포스팅의 BOJ 2884번 : 알람 시계에서는 복잡한 조건문을 가진 문제를 풀어보았습니다. 오늘은 더욱 범위가 넓어진 시간 문제를 풀어보도록 하겠습니다. 핵심 포인트 조건문 시계 계산 일단, 문제를 보도록 하죠. 기본적으로 현재 시간을 시(H)와 분(M)으로 주어지고 오븐이 걸리는 시간(T)이 주어집니다. 그리고 요리가 완성되는 시간을 출력해야하죠. 가장 먼저 해볼것은 분을 계산해보도록 하겠습니다. 일단, M + T가 분이 될 것입니다. 그런데, T의 범위는 1,000분이 될 수도 있기 때문에 T를 60분으로 나눈 나머지 M + T % 60을 더해주면 됩니다. 그런데 여기서 M + T % 60 역시 60분을 넘어설수도 있겠죠? 따라서, 다시 60분으로 나눈 나머지를 계산해야합니다. 따라..

Programming/Coding Problem

BOJ 2884번 : 알람 시계

안녕하세요. 지난 포스팅의 BOJ 14681번 : 사분면 고르기에서는 복잡한 조건문을 가진 문제를 풀어보았습니다. 오늘은 조금 더 생각을 해보아야하는 문제를 풀어보도록 하죠. 핵심 포인트 조건문 문제를 보면 입력된 두 개의 시간(H)와 분(M)에서 45분을 뺀 시간을 시, 분의 형태로 출력해야합니다. 여기서 저희는 첫번째로 2가지 조건을 고려해볼 수 있겠죠. 현재 시간에서 45분을 뺐을 때 양수가 나오는 경우, 음수가 나오는 경우입니다. 여기서 음수가 나오는 경우에는 현재 시간(H)에서 1을 빼고 60분을 더해준 뒤 45분을 빼는 것이기 때문에 결과적으로 15분을 더하게 됩니다. 그런데 한가지 문제가 더 있습니다. 만약, 시간에서 1을 뺏는데 음수가 나오면 어떡하죠? 이 경우에는 현재 시각이 0시라는 것..

Johns Hohns
'조건문' 태그의 글 목록