알고리즘/백준 JAVA

[JAVA] 백준 코딩테스트 1.입출력과 사칙연산 1000: A+B, 1001:A-B, 11382: 꼬마 정민 / 정수형 타입

이오와이 2023. 8. 30. 10:10

 

지난 시간을 통해 숫자를 입력하여 덧셈, 뺄셈을 할 수 있게 되었습니다.

 

▼1000: A+B

https://eo-y.tistory.com/58

 

[JAVA] 백준 코딩테스트 1.입출력과 사칙연산 1000: A+B

백준 알고리즘을 풀고 있었지만 기록도 하고 코드 정리도 할 겸 다시 정주행하려고 한다. 1000번 문제 A+B A+B 성공 시간 제한메모리 제한제출 정답 맞힌 사람 정답 비율 2 초 128 MB 913847 366255 255158 40

eo-y.tistory.com

▼1001: A-B

https://eo-y.tistory.com/60

 

[JAVA] 백준 코딩테스트 1.입출력과 사칙연산 1001: A-B

지난 번에는 A+B를 풀어보았다. https://eo-y.tistory.com/58 [JAVA] 백준 코딩테스트 1.입출력과 사칙연산 1000: A+B 백준 알고리즘을 풀고 있었지만 기록도 하고 코드 정리도 할 겸 다시 정주행하려고 한다.

eo-y.tistory.com

 

이번에는 A+B+C를 해보도록 하겠습니다.

방법은 같습니다.

 

 

11382: 꼬마정민

동일한 방법으로 하면 코드 완성입니다.

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();

        sc.close();

        System.out.println(A+B+C);
    }
}

완성!

 

인 줄 알았으나..

입력조건을 다시 보니 새로운 게 보입니다.

 

A, B, C (1 ≤ A, B, C ≤ 10^ 12 )

세 정수가 10의 12승입니다.

기존에 작성한 int의 범위는 –2,147,483,648 ~ 2,147,483,647인데 말이죠.

10,000,000,000,000을 담기에는 작은 그릇이네요.

 

그렇다면 더 큰 그릇을 꺼내옵니다.
int보다 큰 정수형 long 그릇이요.

 

long은 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807입니다.

 

최종

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();

        sc.close();

        System.out.println(A+B+C);
    }
}

방법은 동일합니다.

int가 아닌 long 정수형을 선언하고

이를 모두 더해줍니다.

 

 

정수형 타입

알아가는 김에 정수형 타입에 대해 모두 알아봅니다.

 

자바에서 정수형을 표현하는 자료형은 int,long이 대표적입니다.

byte,short도 있지만 잘 쓰이지 않아요.

 

정수형 타입 할당되는 메모리의 크기 데이터의 표현 범위
byte 1바이트 -128 ~ 127
short 2바이트 -215 ~ (215 - 1)
-32,768 ~ 32,767
int 4바이트 -231 ~ (231 - 1)
-2,147,483,648 ~ 2,147,483,647
long 8바이트 -263 ~ (263 - 1)
-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807

출처 : http://www.tcpschool.com/java/java_datatype_basic