전체 글 66

백준 2742 자바 - java를 활용한 거꾸로 N찍기

백준 2741번: 기찍 N with Java https://www.acmicpc.net/problem/2742 2742번: 기찍 N 자연수 N이 주어졌을 때, N부터 1까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오. www.acmicpc.net package BOJ; import java.util.Scanner; public class BOJ2742 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); for(int i = N; i>0; i--) { System.out.println(i); } } } 코드 복붙해서 백준에 제출할 때에는 package를 지워줘야 하고, cl..

백준 2742 파이썬 - 거꾸로 출력하기

백준 2742번 - 기찍N with python Q. 자연수 N이 주어졌을 때, N부터 1까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오. 입력> 첫째 줄에 100,000보다 작거나 같은 자연수 N이 주어진다. 출력> 첫째 줄부터 N번째 줄 까지 차례대로 출력한다. 이번엔 지난번에 문제와 동일하게 1~N까지 출력하는 것이나, 이는 순서가 지난번 문제와 거꾸로 된 문제이다! 먼저 지난 포스팅은 아래 링크를 걸어두었다. 2022.03.21 - [우당탕탕 파이썬 with 하루하나 알고리즘] - 백준 2741 파이썬 - 1부터 N까지 차례대로 출력하기 이 문제와 지난 포스팅과 비슷한 문제인데, 달라진 점은 숫자를 거꾸로 출력해야 한다는 점이다. 숫자를 거꾸로 출력하려면 범위를 반대로 지정해주면 된다. 우리는..

백준 2741 파이썬 - 1부터 N까지 차례대로 출력하기

백준 2741번 - N찍기 with python Q. 자연수 N이 주어졌을 때, 1부터 N까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오. 입력> 첫째 줄에 100,000보다 작거나 같은 자연수 N이 주어진다. 출력> 첫째 줄부터 N번째 줄 까지 차례대로 출력한다. 이번 코드는 따로 설명할 게 없어서 코드만 올려두겠다. 주의해주어야 할 점은 range 함수에서 범위를 잘 지정해주어야한다는 점이다. N = int(input()) for i in range(1,N+1): print(i)

백준 15552 파이썬 - input를 대신할 함수가 있다고?!

백준 15552번 - 빠른 A + B with python Q. 본격적으로 for문 문제를 풀기 전에 주의해야 할 점이 있다. 입출력 방식이 느리면 여러 줄을 입력받거나 출력할 때 시간초과가 날 수 있다는 점이다. C++을 사용하고 있고 cin/cout을 사용하고자 한다면, cin.tie(NULL)과 sync_with_stdio(false)를 둘 다 적용해 주고, endl 대신 개행문자(\n)를 쓰자. 단, 이렇게 하면 더 이상 scanf/printf/puts/getchar/putchar 등 C의 입출력 방식을 사용하면 안 된다. Java를 사용하고 있다면, Scanner와 System.out.println 대신 BufferedReader와 BufferedWriter를 사용할 수 있다. BufferedW..

백준 8393 파이썬 - for문을 활용하여 누적 합 구하기

백준 8393번 - 합 with python Q. n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하시오. 입력> 첫째 줄에 n (1 ≤ n ≤ 10,000)이 주어진다. 출력> 1부터 n까지 합을 출력한다. 되게 간단한 문제! 차근차근 쫓아오면 된다~ 먼저 n을 입력받아보자. n = int(input()) n은 입력함수를 통해 받아올 수 있다. 이제 이 n이 주어졌을 때 1부터 n까지 합해야 한다. 일단 for문을 먼저 생각해보자. 우리는 1부터 n까지 더해야하므로, for문의 범위도 1부터 n까지 설정해야 한다. range(1,n)을 범위로 지정해주면 되겠다고 생각하는 분들이 있을 것 같다. 하지만 지난 포스팅에서도 말했듯이, range(1,n)은 1이상 n미만을 의미한다. 즉, n은 범..

백준 10950 파이썬 - for문을 활용해 A+B 구하기

백준 10950번 - A+B - 3 with python Q. 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력> 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 각 테스트 케이스마다 A+B를 출력한다. 이번 문제는 A + B를 도출해내는 문제다. 근데 왜 문제 제목이 A + B - 3인 줄 모르겠다..? 처음에 A + B - 3 계산하는 줄 암.. 그래서 첫 줄에 테스트 케이스의 개수가 주어지는 건데 A - 3 이어서 출력값이 2가 나오는 건 줄 알았다..! 진짜 혼동이 올 만 했다,, 하필 첫째 줄이 5이고 둘째 줄을 더하면 2여서.. 첨에 되게 복잡한 식인 ..

백준 2739 파이썬 - for문을 사용하여 구구단을 외자!

Q. N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램을 작성하시오. 출력 형식에 맞춰서 출력하면 된다. 입력 > 첫째 줄에 N이 주어진다. N은 1보다 크거나 같고, 9보다 작거나 같다. 출력 > 출력형식과 같게 N*1부터 N*9까지 출력한다. 이제 if문에 대한 문제는 다 풀고 for문! for문은 실행할 코드를 반복할 때 사용하기 좋은 구문이다. 반복문의 구문에는 기본적으로 for문, while문이 있는데, for문은 반복할 횟수를 알 때 사용하기 좋고, while문은 특정 조건을 만족할 때 반복을 행할 수 있도록 할 때 잘 쓰인다. 구구단 같은 경우에는 우리가 몇 번 반복을 해야할 지 알고 있다.왜냐하면 구구단은 말 그대로 1부터 9까지를 곱해주면 되기 때문이다. 백준 예제에서처럼 5를 입력하면..

백준 2480 파이썬 - if문을 활용해 조건 별 계산 식 도출하기

백준 2480번 - 주사위 세 개 with python Q. 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다. 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×100원의 상금을 받게 된다. 예를 들어, 3개의 눈 3, 3, 6이 주어지면 상금은 1,000+3×100으로 계산되어 1,300원을 받게 된다. 또 3개의 눈이 2, 2, 2로 주어지면 10,000+2×1,000 으로 계산되어 12,000원을 받게 된다. 3개의 눈이 6, 2, 5로 주어지면 그중 가장 큰 값이 ..

백준 2525 파이썬 - if문을 활용해 일정 시간이 지난 시각 확인하기

백준 2525번 - 오븐 시계 with python Q. KOI 전자에서는 건강에 좋고 맛있는 훈제오리구이 요리를 간편하게 만드는 인공지능 오븐을 개발하려고 한다. 인공지능 오븐을 사용하는 방법은 적당한 양의 오리 훈제 재료를 인공지능 오븐에 넣으면 된다. 그러면 인공지능 오븐은 오븐구이가 끝나는 시간을 분 단위로 자동적으로 계산한다. 또한, KOI 전자의 인공지능 오븐 앞면에는 사용자에게 훈제오리구이 요리가 끝나는 시각을 알려 주는 디지털 시계가 있다. 훈제오리구이를 시작하는 시각과 오븐구이를 하는 데 필요한 시간이 분단위로 주어졌을 때, 오븐구이가 끝나는 시각을 계산하는 프로그램을 작성하시오. 첫째 줄에는 현재 시각이 나온다. 현재 시각은 시 A (0 ≤ A ≤ 23) 와 분 B (0 ≤ B ≤ 59..

백준 2884 파이썬 - if문을 사용해 45분 앞서는 시간 확인하기

백준 2884번 - 알람시계 with python Q. 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지만, 조금만 더 자려는 마음은 그 어떤 것도 없앨 수가 없었다. 이런 상근이를 불쌍하게 보던, 창영이는 자신이 사용하는 방법을 추천해 주었다. 바로 "45분 일찍 알람 설정하기"이다. 이 방법은 단순하다. 원래 설정되어 있는 알람을 45분 앞서는 시간으로 바꾸는 것이다. 어차피 알람 소리를 들으면, 알람을 끄고 조금 더 잘 것이기 때문이다. 이 방법을 사용하면, 매일 아침 더 잤다는 기분을 느낄 수 있고, 학교도 지각하지 않게 된다. 현재 상근이가 설정한 알람 시각이 주어..