Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

Everything has an expiration date

BAEKJOON - 10950 : A + B - 3 본문

BAEKJOON - challenge/반복문

BAEKJOON - 10950 : A + B - 3

Jelly-fish 2023. 9. 17. 19:43

import java.util.Scanner;

public class Main
{
	public static void main(String[] args)
	{
		// 1. 변수 선언
		Scanner sc = new Scanner(System.in);
		int[] abArr;
		int testCaseCnt;
		
		
		// 2. 사용자로부터 입력 받기
		//    ① 첫째 줄에 테스트 케이스의 개수(입력할 데이터 수) T
		//	  ② A 와 B 의 값이 한 줄(공백 구분)으로, T만큼의 횟수만큼 들어온다.
		
		// ▶ A 와 B의 입력이 T번 만큼 들어온다는 것은... → 입력 하는 값이 총 2 * T
		//    즉, 배열 abArr의 크기를 2 * T로 지정.
		testCaseCnt = sc.nextInt();
		abArr = new int[2*testCaseCnt];
		
		//	  ② A 와 B 의 값이 한 줄(공백 구분)으로, T만큼의 횟수만큼 들어온다.
		// ---------------------------------------------------------------------------------
		//   [만약 ...] : 데이터의 입력 횟수 T = 3이면
		//    → 『 [0] ← A, [1] ← B 』 ==> 『 [2] ← A, [3] ← B 』 ==>  『 [4] ← A, [5] ← B 』
		//            < i = 0 >                 < i = 2 >                  < i = 4 >       
		// ---------------------------------------------------------------------------------
		//           ∴ ① 저장해야 할 인덱스는... i = 0 부터, 2씩 증가할 때
		//                                     → 『 [i] + [i+1] 』
		//           ∴ ② 반복해야 할 횟수는 ...  i는 2씩 증가하므로, testCaseCnt * 2 보다 작을 때!
		//                                     i =  0 OK! →  2 OK! →  4 OK! →  6 (STOP!!) 
		//                                         
		// ---------------------------------------------------------------------------------
		//	 ↓ ② A 와 B 의 값이 한 줄(공백 구분)으로, T만큼의 횟수만큼 들어오는 것을
		//       반복문으로 표현.
		for (int i = 0; i < testCaseCnt * 2; i += 2)
		{
			abArr[i] = sc.nextInt();	//-- A 값 읽어들이기. (0 부터 ~ 짝수 번째의 인덱스 = A의 값.)
			abArr[i+1] = sc.nextInt();	//-- B 값 읽어들이기. (1 부터 ~ 홀수 번째의 인덱스 = B의 값.)
		}
		
		
		// 3. A와 B를 더한 후, 결과 값을 하나 씩 개행하며 출력한다.
		// ---------------------------------------------------------------------
		//    [만약...] : 데이터의 입력 횟수 T = 3이고, A B의 값이 총 6번 이라면
		//               더해야 하는 배열의 요소 인덱스는...
		//             → 『  [0]+[1]   →     [2]+[3]      →    [4]+[5]  』
		//              < i = 0 > OK!  →   < i = 2 > OK!  →  < i = 4 > OK!  < i = 6 >(STOP!!!)
		// ----------------------------------------------------------------------
		//                ∴ ① i의 반복 횟수는 → 『 배열의 총 길이(abArr.length) 』 보다 작을 때!
		//                ∴ ② 더해야 하는 인덱스는... i = 0부터, 2씩 증가할 때
		//                                  → 『 [i] + [i+1] 』
		// ----------------------------------------------------------------------
		//  ↓ 3. A와 B를 더한 후, 결과 값을 하나 씩 개행하며 출력하는 것을
		//       반복문으로 표현.
		for (int i = 0; i < abArr.length ; i += 2)
		{
			System.out.println(abArr[i] + abArr[i+1]);
		}
	
	}

}

😅💦💦💦 나 왜 이리 무식하게 푼 것 같지...?

입력하는 A, B 값 한꺼번에 입력 받고 저장한 다음에... 한꺼번에 출력하려면 배열 쓰는 수밖에 없지 않나...?

오잉...

'BAEKJOON - challenge > 반복문' 카테고리의 다른 글

★ BAEKJOON - 15552 : 빠른 A + B  (0) 2023.09.19
BAEKJOON - 25314 : 코딩은 체육과목 입니다  (0) 2023.09.17
BAEKJOON - 25304 : 영수증  (0) 2023.09.17
BAEKJOON - 8393 : 합  (0) 2023.09.17
BAEKJOON - 2739 : 구구단  (0) 2023.09.17