컴공댕이 공부일지

[java] 백준 ( 10950, 10951, 10952 A+B ) ★EOP 본문

문제 풀이/코딩 문제 풀이 모음

[java] 백준 ( 10950, 10951, 10952 A+B ) ★EOP

은솜솜솜 2023. 4. 6. 00:35
728x90

#1. 10950 A+B - 3

브론즈 5

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

 

10950번: A+B - 3

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

www.acmicpc.net

 

새싹 문제 다운 정말 간단한 문제. 두 수의 합을 테스트 케이스만큼 출력.

 

정답 코드

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		
		Scanner s = new Scanner(System.in);
		int t = s.nextInt();
		
		for(int i=0; i<t; i++) {
			int a = s.nextInt();
			int b = s.nextInt();
			
			System.out.println(a+b);
		}
	}

}

 

 

 

 

 

 

 

#2. 10950 A+B - 4

브론즈 5

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

 

10951번: A+B - 4

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

www.acmicpc.net

 

문제 자체는 쉽다. 입력받은 두 수 묶음의 합을 모두 출력하는 것이다.

문제는 단순히 테스트케이스가 입력되지 않는다.

그래서 몇 묶음이나 입력될 지를 모른다. 그냥 입력이 끝나면 끝인 것이다...ㅎ

그래서 EOP 개념이 등장한다.

 

★EOP

hasNextLine() 메서드를 활용했다.

다음에 읽을 값이 있는지 확인하는 Boolean 타입의 메소드로 값이 있으면 True를 반환한다.

 

계산해야하는 숫자 묶음이 한 줄에 다 입력되므로 nextLine()으로 읽어서

공백과 엔터를 빼고 0번, 2번 인덱스에 입력되는 숫자만 뽑아 int로 형변환하여 계산하였다.

 

 

정답코드 

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		
		Scanner s = new Scanner(System.in);
		
		String temp = null;
		
		while(s.hasNextLine()) {
			temp = s.nextLine();
			System.out.println((int)temp.charAt(0)+(int)temp.charAt(2)-96);
		}
		
	}

}

 

 

 

 

 

 

 

 

#3. 10952 A+B - 5

브론즈 5

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

 

10952번: A+B - 5

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

www.acmicpc.net

 

이것 역시 쉽다. 테스트 케이스는 주어지지 않지만

0이 두 번 입력되면 루프를 멈추면 된다.

그냥 스캐너로 입력받고 입력 받은 값이 모두 0이면 반복문을 빠져나온다.

 

정답 코드

import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		
		Scanner s = new Scanner(System.in);
		
		while(true) {
			int a = s.nextInt();
			int b = s.nextInt();
			
			if(a+b==0) {
				break;
			}
			
			System.out.println(a+b);
			
		}
		
	}

}
728x90
Comments