[백준] 2884번 - 알람 시계 (파이썬)
·
알고리즘 공부/백준
📝 문제 > 원래 설정되어 있는 알람을 45분 앞서는 시간으로 바꾸는 것이다. 현재 상근이가 설정한 알람 시각이 주어졌을 때, 창영이의 방법을 사용한다면, 이를 언제로 고쳐야 하는지 구하는 프로그램을 작성하시오. https://www.acmicpc.net/problem/2884 2884번: 알람 시계 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, www.acmicpc.net 🎨 풀이 💡 성공 코드 import sys H,M = map(int, sys.stdin.readline().split()) if (M < 45): if (H == 0): H = 24 H -= 1 ..
[백준] 2480번 - 주사위 세개 (파이썬)
·
알고리즘 공부/백준
📝 문제 > 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다. 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×100원의 상금을 받게 된다. 3개 주사위의 나온 눈이 주어질 때, 상금을 계산하는 프로그램을 작성 하시오. https://www.acmicpc.net/problem/2480 2480번: 주사위 세개 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,0..
[백준] 14681번 - 사분면 고르기 (파이썬)
·
알고리즘 공부/백준
📝 문제 > 점의 x 좌표와 y 좌표가 주어질 때 그 점이 어느 사분면에 속하는지 알아내는 프로그램을 작성하시오. 단, x좌표와 y좌표는 모두 양수나 음수라고 가정한다. https://www.acmicpc.net/problem/14681 14681번: 사분면 고르기 점 (x, y)의 사분면 번호(1, 2, 3, 4 중 하나)를 출력한다. www.acmicpc.net 🎨 풀이 💡 첫 번째 시도 = 성공 코드 x = int(input()) y = int(input()) if x > 0 and y > 0 : print("1") elif x 0 : print("2") elif x 각각 범위에 맞게 조건식을 ..
[프로그래머스 / Level 1] 정수 제곱근 판별 (파이썬)
·
알고리즘 공부/프로그래머스
📝 문제 >임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. https://programmers.co.kr/learn/courses/30/lessons/12934 코딩테스트 연습 - 정수 제곱근 판별 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함 programmers.co.kr 🎨 풀이 💡 첫 번째 시도 = 성공 코드 def solution(n): answer = 0 num ..
[프로그래머스 / Level 1] 최소직사각형 (파이썬)
·
알고리즘 공부/프로그래머스
📝 문제 >모든 명함의 가로 길이와 세로 길이를 나타내는 2차원 배열 sizes가 매개변수로 주어집니다. 모든 명함을 수납할 수 있는 가장 작은 지갑을 만들 때, 지갑의 크기를 return 하도록 solution 함수를 완성해주세요. (카드 회전 가능) 첫번째 케이스 예시 - [60 * 50], [30 * 70], [60 * 30], [80 * 40] 크기의 카드가 각각 있다. - 두 번째 카드인 [30*70]을 회전시켜서 [70 * 30]으로 만든다. - 현재 상태 : [60 * 50], [70 * 30], [60 * 30], [80 * 40] - 여기서 가로는 4번째 카드의 가로인 80에게 다 덮이기 때문에 얘만 생각해주면 된다. - 세로는 첫 번째 카드인 50에게 다 덮이기 때문에 얘만 생각해주면 ..
[프로그래머스 / Level 1] 나머지가 1이 되는 수 찾기 (파이썬)
·
알고리즘 공부/프로그래머스
📝 문제 >자연수 n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. https://programmers.co.kr/learn/courses/30/lessons/87389 코딩테스트 연습 - 나머지가 1이 되는 수 찾기 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. 제한사항 입 programmers.co.kr 🎨 풀이 💡 첫 번째 시도 = 성공 코드 def solution(n): for i in range(1,n): if n % i == 1:..
[프로그래머스 / Level 2] 짝지어 제거하기 (파이썬)
·
알고리즘 공부/프로그래머스
📝 문제 > 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. # 1. 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. # 2. 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙입니다. # 3. 이 과정을 반복해서 문자열을 모두 제거한다면 짝지어 제거하기가 종료됩니다. # 4. 성공적으로 수행할 수 있으면 1을, 아닐 경우 0을 리턴해주면 됩니다. - 이 문제는 최근에 들어온 문자와 들어올 문자가 같으면 둘다 pop을 시켜야하는 문제라서 stack이 적절할 것이라 생각해 stack을 이용해서 문제를 풀었다. https://programmers.co.kr/learn/courses/30/lessons/12973 코딩테스트 연습 - 짝지어 제거하기 짝지어 제거하기는, 알파벳 소문자..
[프로그래머스 / Level 1] 신고 결과 받기 (파이썬)
·
알고리즘 공부/프로그래머스
📝 문제 요약 > 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 한다. 규칙 1. 각 유저는 한 번에 한 명의 유저를 신고할 수 있다. 신고 횟수 제한은 없으나 한 유저에게 여러 번 신고한 건 1회로 처리된다. (중복 신고 안됨) 2. k번 이상 신고된 유저는 게시판 이용이 정지되며, 해당 유저를 신고한 모든 유저는 정지 사실을 메일로 받게 된다. 이 때, 각 유저별로 처리 결과 메일을 받은 횟수를 배열에 담아 return 하도록 solution 함수를 완성하라. - report 부분은 신고한 사람이 앞에, 신고당한 사람이 뒤에 적혀져있다. - 무지는 프로도와 네오를 신고했는데, 프로도와 네오 모두 2번 신고당해서 정지되었으므로 무지는 2개의 처리 메일을 받..