목록알고리즘/백준 (170)
곽로그
11720번: 숫자의 합 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. www.acmicpc.net 문제의 조건을 생각하지 않고 바로 문제를 풀었을 때의 접근법은 아래와 같다. 0) 연속된 숫자의 개수(N)과 연속된 숫자(numS)를 입력받는다. 1) numS를 입력받는다 2) numS를 10으로 나눈 나머지를 sum에 더한다 3) numS를 10으로 나눈다 4) N만큼 반복한다 위의 접근법에 따른 풀이는 아래 코드와 같다. import java.util.Scanner; public class Main { public static void main(String[] args) { //n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하..
8393번: 합 문제 n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 n (1 ≤ n ≤ 10,000)이 주어진다. 출력 1부터 n까지 합을 출력한다. 예제 입력 1 복사 3 예제 출력 1 복사 6... www.acmicpc.net import java.util.Scanner; public class Main { public static void main(String[] args) { //n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하시오. Scanner in=new Scanner(System.in); int n=in.nextInt(); int sum=0; for(int i=1;i
1924번: 2007년 첫째 줄에 빈 칸을 사이에 두고 x(1≤x≤12)와 y(1≤y≤31)이 주어진다. 참고로 2007년에는 1, 3, 5, 7, 8, 10, 12월은 31일까지, 4, 6, 9, 11월은 30일까지, 2월은 28일까지 있다. www.acmicpc.net 접근 월, 일이 주어졌을 때 해당하는 요일을 구하는 문제이다. 요일은 7요일이다. 따라서 일수를 7로 나눈 나머지가 같은 일은 같은 요일이 된다. 예를 들어 월 화 수 목 금 토 일 1 2 3 4 5 6 7 8 9 10 11 12 13 14 이렇게 주어졌다고 할 때 1일 과 8일은 월요일인데, 1과 8은 7로 나눈 나머지가 1이다. 마찬가지로 2와 9는 7로 나눈 나머지가 2로 같다. 따라서 주어진 월, 일이 1월 1일 부터 경과된 총..
2441번: 별 찍기 - 4 첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. www.acmicpc.net 접근 별찍기 -3과 같은 문제인데, 공백만 추가된것 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in=new Scanner(System.in); int N=in.nextInt(); for(int line=0;line
https://www.acmicpc.net/problem/2440 2440번: 별 찍기 - 3 첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제 www.acmicpc.net 접근 앞선 다른 별찍기 문제처럼 이중포문을 이용해서 해당하는 별 모양을 출력하는 문제이다. 각행이 하나씩 증가할때마다 *의 수가 어떻게 변하는 지를 보면 된다. 예를 들어 입력받은 N=5라고 가정하자 0행 ***** 5번(=N-0) 1행 **** 4번(=N-1) 2행 *** 3번(=N-2) 3행 ** 2번(=N-3) 4행 * 1번(=N-4) 이렇게 하나씩 관계를 써나가면 쉽게 풀 수 있다. import java.util.Scanner; public class Main { public sta..
문제출처 https://www.acmicpc.net/problem/2439 2439번: 별 찍기 - 2 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. www.acmicpc.net 풀이방향 별찍기 1과 비슷한 문제인데 공백이라는 조건이 하나가 더 추가가 됬다. 따라서 공백에 대한 조건을 처리하기 위해 공백을 다루기 위한 변수를 하나 더 추가해주면 된다. 예를 들어 5라고 하면 1행 oooo* 2행 ooo** 3행 oo*** 4행 o**** 5행 ***** 이렇게 변한다. 각각의 공백의 개수와 별의 개수가 행의 넘버와 어떤 관계가 있는지를 보면 1행 oooo* 공백 5-1개, 별 1개 2행 ooo** 공백 5..
문제 출처 https://www.acmicpc.net/problem/2438 2438번: 별 찍기 - 1 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 www.acmicpc.net 풀이방향 입력받은 숫자 만큼 행이 존재하고, 각 행에는 행의 넘버 만큼의 별이 출력되도록 하는 문제이다. 예를들어 입력받은 숫자가 5라고 하면 1행 * 2행 ** 3행 *** 4행 **** 5행 ***** 이렇게 출력을 해야한다. 따라서 행에 대한 변수가 필요하고, 별을 출력할때 별의 갯수를 세기위한 변수가 필요하다. 따라서 이중 for문을 이용해서 별을 출력하면 된다. import java.util.Scanner; public class Main { public static void mai..