1) 2557
문제 : Hello World!를 출력하시오.
입력 : 없음
출력 : Hello World!를 출력하시오.
예제입력 : 없음
예제출력 : Hello World!
제출주의) Class명은 Main으로 해야한다.
public class Main {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
2) 1000
문제 : 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력 : 첫째 줄에 A와 B가 주어진다. (0<A, B<10)
출력 : 첫째 줄에 A+B를 출력한다.
예제입력 : 1 2
예제출력 : 3
제출주의) import도 같이 입력해야 한다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A = sc.nextInt();
int B = sc.nextInt();
System.out.println(A + B);
}
}
3) 1001
문제 : 두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오
입력 : 첫째 줄에 A와 B가 주어진다. (0<A, B<10)
출력 : 첫째 줄에 A-B를 출력한다.
예제입력 : 3 2
예제출력 : 1
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A = sc.nextInt();
int B = sc.nextInt();
System.out.println(A + B);
}
}
4) 10998
문제 : 두 정수 A와 B를 입력받은 다음, AxB를 출력하는 프로그램을 작성하시오.
입력 : 첫째 줄에 A와 B가 주어진다. (0<A, B<10)
출력 : 첫째 줄에 AxB를 출력한다.
예제입력 : 1 2
예제출력 : 2
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A = sc.nextInt();
int B = sc.nextInt();
System.out.println(A * B);
}
}
5) 1008
문제 : 두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.
입력 : 첫째 줄에 A와 B가 주어진다. (0<A, B<10)
출력 : 첫째 줄에 A/B를 출력한다. 실제 정답과 출력값의 절대오차 또는 상대오차가 10^-9 이하이면 정답이다.
예제입력1 : 1 3
예제출력1 : 0.333333333333333
예제입력2 : 4 5
예제출력2 : 0.8
제출주의) 당연하게 위에처럼 똑같이 입력하고 부호만 바꿨는데 틀렸다. 그 이유는 절대오차 때문에 double은 15~16자리까지 표기하므로 정확도의 이유로 인해 double을 써야 정답이다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
double A = sc.nextInt();
double B = sc.nextInt();
System.out.println(A / B);
}
}
6) 10869
문제 : 두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오.
입력 : 두 자연수 A와 B가 주어진다. (1≤A, B≤10,000)
출력 : 첫째 줄에, A+B, 둘째 줄에 A-B, 셋째 줄에 A*B, 넷째 줄에 A/B, 다섯째 줄에 A%B를 출력한다.
예제입력 : 7 3
예제 출력 : 10 4 21 2 1
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A = sc.nextInt();
int B = sc.nextInt();
System.out.println(A+B);
System.out.println(A-B);
System.out.println(A*B);
System.out.println(A/B);
System.out.println(A%B);
}
}
7) 10926
문제 : 준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하는 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때, 놀람을 표현하는 프로그램을 작성하시오.
입력 : 첫째 줄에 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어진다. 아이디는 알파벳 소문자로만 이루어져 있으며, 길이는 50자를 넘지 않는다.
출력 : 첫째 줄에 준하의 놀람을 출력한다. 놀람은 아이디 뒤에 ??!를 붙여서 나타낸다.
예제입력 : joonas
예제출력 : joonas??!
제출주의) 입력된 id의 값이 맞는지 확인하는 코드를 입력 하고 출력하는것인 줄 알겠지만, 단순히 아래처럼 입력하는 것이다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String id = sc.nextLine();
System.out.println(id + "??!");
}
}
8) 18108
문제 : ICPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다. 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다. 불교 국가인 태국은 불멸기원(佛滅紀元), 즉 석가모니가 열반한 해를 기준으로 연도를 세는 불기를 사용한다. 반면, 우리나라는 서기 연도를 사용하고 있다. 불기 연도가 주어질 때 이를 서기 연도로 바꿔 주는 프로그램을 작성하시오.
입력 : 서기 연도를 알아보고 싶은 불기 연도 y가 주어진다. (1000 ≤ y ≤ 3000)
출력 : 불기 연도를 서기 연도로 변환한 결과를 출력한다.
예제입력 : 2541
예제출력 : 1998
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int y = sc.nextInt();
System.out.println(y-543);
}
}
9) 10430
문제 :
(A+B)%C는 ((A%C) + (B%C))%C 와 같을까?
(A×B)%C는 ((A%C) × (B%C))%C 와 같을까?
세 수 A, B, C가 주어졌을 때, 위의 네 가지 값을 구하는 프로그램을 작성하시오.
입력 : 첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000)
출력 : 첫째 줄에 (A+B)%C, 둘째 줄에 ((A%C) + (B%C))%C, 셋째 줄에 (A×B)%C, 넷째 줄에 ((A%C) × (B%C))%C를 출력한다.
예제입력 : 5 8 4
예제출력 : 1 1 0 0
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A = sc.nextInt();
int B = sc.nextInt();
int C = sc.nextInt();
System.out.println((A+B)%C);
System.out.println(((A%C) + (B%C))%C);
System.out.println((A*B)%C);
System.out.println(((A%C) * (B%C))%C);
}
}
10) 2588
문제 :
(세 자리수) x (세 자리수)는 다음과 같은 과정을 통하여 이루어진다.

(1)과 (2)의 위치에 들어갈 세 자리 자연수가 주어질 때, (3), (4), (5), (6) 위치에 들어갈 값을 구하는 프로그램을 작성하시오.
입력 : 첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.
출력 : 첫째 줄 부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.
예제입력 : 472 385
예제출력 : 2360 3776 1416 181720
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A = sc.nextInt();
int B = sc.nextInt();
int m1 = B % 10;
int m2 = B % 100 / 10;
int m3 = B / 100;
int result1 = m1 * A;
int result2 = m2 * A;
int result3 = m3 * A;
System.out.println(result1);
System.out.println(result2);
System.out.println(result3);
System.out.println(A * B);
}
}
11) 11382
문제 : 꼬마 정민이는 이제 A + B 정도는 쉽게 계산할 수 있다. 이제 A + B + C를 계산할 차례다.
입력 : 첫 번째 줄에 A,B,C(1≤A, B C ≤ 10^12)이 공백을 사이에 두고 주어진다.
출력 : A + B + C의 값을 출력한다.
예제입력 : 77 77 7777
예제출력 : 7931
제출주의) 당연하게 int 타입으로 입력하여 제출하였는 런타임에러(InputMismatch)가 났다. 그 이유는 최대값이 10^12이므로 int의 최대값인 2,147,483,647을 넘어가면 -로 결과값을 출력하게 된다. 따라서 int가 아닌 Long이나 String으로 타입을 변경하면 된다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long A = sc.nextLong();
long B = sc.nextLong();
long C = sc.nextLong();
System.out.println(A + B + C);
}
}
12) 10171
문제 : 아래 예제와 같이 고양이를 출력하시오
입력 : 없음.
출력 : 고양이를 출력한다.
예제입력1 : 없음
예제출력1 :

제출주의) 역슬래시를 출력하고 싶은 경우 앞에 역슬래시를 한 번 더 입력해야 한다.
public class Main {
public static void main(String[] args) {
System.out.println("\\ /\\");
System.out.println(" ) ( ')");
System.out.println("( / )");
System.out.println(" \\(__)|");
}
}
13) 10172
문제 : 아래 예제와 같이 개를 출력하시오.
입력 : 없음.
출력 : 개를 출력한다.
예제입력1 : 없음
예제출력1 :

제출주의) 큰따옴표를 출력하고 싶으면 앞에 \를 입력해야 한다.
public class Main {
public static void main(String[] args) {
System.out.println("|\\_/|");
System.out.println("|q p| /}");
System.out.println("( 0 )\"\"\"\\");
System.out.println("|\"^\"` |");
System.out.println("||_/=\\\\__|");
}
}
'알고리즘 > 백준' 카테고리의 다른 글
[백준 알고리즘]_조건문 (0) | 2024.08.14 |
---|