코딩하는 둥둥

[ 백준 Baekjoon ] 단계별로 풀어보기_1.입출력과 사칙연산 본문

Backend/백준

[ 백준 Baekjoon ] 단계별로 풀어보기_1.입출력과 사칙연산

둥둥 2022. 3. 25. 18:41
728x90
Hello World! 를 출력하시오.

https://www.acmicpc.net/problem/2557

 

2557번: Hello World

Hello World!를 출력하시오.

www.acmicpc.net

더보기
 

→ 컴파일 에러 발생

언어 도움말 페이지에 가면 java는 다음과 같이 컴파일/실행한다고 되어 있습니다

  • 컴파일: javac -J-Xms1024m -J-Xmx1024m -J-Xss512m -encoding UTF-8 Main.java
  • 실행: java -Xms1024m -Xmx1024m -Xss512m -Dfile.encoding=UTF-8 Main

따라서, class 이름은 반드시 Main 으로 해야 합니다.

1
2
3
4
5
6
7
public class Main {
    
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
 
}
cs

ACM-ICPC 인터넷 예선, Regional, 그리고 World Finals까지 이미 2회씩 진출해버린 kriii는 미련을 버리지 못하고 왠지 모르게 올해에도 파주 World Finals 준비 캠프에 참여했다.
대회를 뜰 줄 모르는 지박령 kriii를 위해서 격려의 문구를 출력해주자.

두 줄에 걸쳐 "강한친구 대한 육군"을 한 줄에 한 번씩 출력한다.

https://www.acmicpc.net/problem/10718

 

10718번: We love kriii

ACM-ICPC 인터넷 예선, Regional, 그리고 World Finals까지 이미 2회씩 진출해버린 kriii는 미련을 버리지 못하고 왠지 모르게 올해에도 파주 World Finals 준비 캠프에 참여했다. 대회를 뜰 줄 모르는 지박

www.acmicpc.net

더보기
1
2
3
4
5
6
7
8
public class Main {
    
    public static void main(String[] args) {
        System.out.println("강한친구 대한육군");
        System.out.println("강한친구 대한육군");
    }
 
}
cs

아래 예제와 같이 고양이를 출력하시오.

https://www.acmicpc.net/problem/10171

 

10171번: 고양이

아래 예제와 같이 고양이를 출력하시오.

www.acmicpc.net

더보기
 

출력형식이 잘못되었습니다

: 출력 결과는 정답과 유사하나, 공백, 빈 줄과 같은 문제로 인해서 출력 결과가 일치하지 않은 경우

- \: 역슬래시 기호를 단일로 사용할 경우 'escape'의 성격을 띠며 원래의 의미를 벗어나 새로운 기능을 하게 됨.
* escape : https://doongi9.tistory.com/entry/Escape
- \n : 줄바꿈 기호.
- \r : 다음 줄 맨 처음으로 가는 역할
- \" : 큰 따옴표를 그냥 쓰게 되면 다른 의미로 받아들여 큰 따옴표를 직접 쓸 때 역슬래시를 써줌.
- \' : 작은 따옴표 또한 큰 따옴표와 같다.
- \\ : 역슬래쉬 하나를 출력한다.

다시 말해, 문자열을 출력하는 데 쓰이는 따옴표줄바꿈 기호로 쓰일 수 있는 역슬래시는 앞에 역슬래시를 하나 더 붙여줘야 한다
1
2
3
4
5
6
7
public class Main {
    
    public static void main(String[] args) {
        System.out.println("\\    /\\\n )  ( ')\n(  /  )\n \\(__)|");
    }
 
}
cs

[ 참고 링크 ]

1. https://shindro.tistory.com/106 

2. https://mirimeter.tistory.com/46

3. https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=ilinkyou&logNo=30189771399 


개를 출력한다.

https://www.acmicpc.net/problem/10172

 

10172번: 개

문제 아래 예제와 같이 개를 출력하시오. 입력 출력 예제 입력 1 복사 예제 출력 1 복사 |\_/| |q p| /} ( 0 )"""\ |"^"` | ||_/=\\__|...

www.acmicpc.net

더보기
1
2
3
4
5
6
7
8
9
10
11
public class Main {
    
    public static void main(String[] args) {
        System.out.println("|\\_/|\n" + 
                            "|q p|   /}\n" + 
                            "( 0 )\"\"\"\\\n" + 
                            "|\"^\"`    |\n" + 
                            "||_/=\\\\__|");
    }
 
}
cs

 


두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
- 입력
첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)
- 출력
첫째 줄에 A+B를 출력한다.

https://www.acmicpc.net/problem/1000

 

1000번: A+B

두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.

www.acmicpc.net

더보기

컴파일 에러 발생 : import를 같이 적어주지 않아서 발생한 오류

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import java.util.*;
 
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);
        
    }
 
}
cs

두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오.
- 입력
첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)
- 출력
첫째 줄에 A-B를 출력한다.

https://www.acmicpc.net/problem/1001

 

1001번: A-B

두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오.

www.acmicpc.net

더보기
1
2
3
4
5
6
7
8
9
10
11
12
13
import java.util.*;
 
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);
        
    }
}
cs

두 정수 A와 B를 입력받은 다음, A×B를 출력하는 프로그램을 작성하시오.
- 입력
첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)
- 출력
첫째 줄에 A×B를 출력한다.

https://www.acmicpc.net/problem/10998

 

10998번: A×B

두 정수 A와 B를 입력받은 다음, A×B를 출력하는 프로그램을 작성하시오.

www.acmicpc.net

더보기
1
2
3
4
5
6
7
8
9
10
11
12
13
import java.util.*;
 
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);
        
    }
}
cs

두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.
- 입력
첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)
- 출력
첫째 줄에 A/B를 출력한다. 실제 정답과 출력값의 절대오차 또는 상대오차가 10-9 이하이면 정답이다.

https://www.acmicpc.net/problem/1008

 

1008번: A/B

두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.

www.acmicpc.net

더보기
1
2
3
4
5
6
7
8
9
10
11
12
13
import java.util.*;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        double A = sc.nextDouble();
        double B = sc.nextDouble();    
        
        System.out.println(A/B);
        
    }
}
cs

두 자연수 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를 출력한다.

https://www.acmicpc.net/problem/10869

 

10869번: 사칙연산

두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. 

www.acmicpc.net

더보기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.util.*;
 
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);
        
    }
}
cs

준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때, 놀람을 표현하는 프로그램을 작성하시오.
- 입력
첫째 줄에 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어진다. 아이디는 알파벳 소문자로만 이루어져 있으며, 길이는 50자를 넘지 않는다.
- 출력
첫째 줄에 준하의 놀람을 출력한다. 놀람은 아이디 뒤에 ??!를 붙여서 나타낸다.

https://www.acmicpc.net/problem/10926

 

10926번: ??!

준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때

www.acmicpc.net

더보기

틀렸습니다.

 기존에 존재하는 아이디가 joonas가 아니라 입력한 문자열을 이미 존재하는 아이디로 가정하고 입력한다.

 

1
2
3
4
5
6
7
8
9
import java.util.*;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        System.out.println(sc.next() + "??!");
    }
}
cs

ICPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다. 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다.
불교 국가인 태국은 불멸기원(佛滅紀元), 즉 석가모니가 열반한 해를 기준으로 연도를 세는 불기를 사용한다. 반면, 우리나라는 서기 연도를 사용하고 있다. 불기 연도가 주어질 때 이를 서기 연도로 바꿔 주는 프로그램을 작성하시오.
- 입력
서기 연도를 알아보고 싶은 불기 연도 y가 주어진다. (1000 ≤ y ≤ 3000)
- 출력
불기 연도를 서기 연도로 변환한 결과를 출력한다.

https://www.acmicpc.net/problem/18108

 

18108번: 1998년생인 내가 태국에서는 2541년생?!

ICPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다. 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다. 불교 국가인 태국

www.acmicpc.net

더보기
1
2
3
4
5
6
7
8
9
10
11
12
import java.util.*;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int y = sc.nextInt();
        int s = y - 543;
//        System.out.println("불기연도 : " + y);
        System.out.println(s); // 서기연도
    }
}
cs

(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를 출력한다.

https://www.acmicpc.net/problem/10430

 

10430번: 나머지

첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000)

www.acmicpc.net

더보기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.util.*;
 
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);
    
    }
}
cs

(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.

(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.
- 입력
첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.
- 출력
첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.

https://www.acmicpc.net/problem/2588

 

2588번: 곱셈

첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.

www.acmicpc.net

더보기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.*;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        String A = sc.nextLine();
        String B = sc.nextLine();
        
        int b1 = B.charAt(0)-'0'; 
        int b2 = B.charAt(1)-'0';
        int b3 = B.charAt(2)-'0';
        
        int a = Integer.parseInt(A);
        int b = Integer.parseInt(B);
        
        System.out.println(a*b3);
        System.out.println(a*b2);
        System.out.println(a*b1);
        System.out.println(a*b);
        
    }
}
cs
728x90