백준/단계별

[C++] 백준 10950

loasd 2022. 12. 4. 18:38
반응형

백준의 10950번 A+B -3 문제이다.

 

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

 

10950번: A+B - 3

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

www.acmicpc.net

단순한 반복문 문제이다.

여기서 동적할당을 통해 배열의 크기를 입력받았다.

 

동적할당에 간단히 설명하자면 


동적할당

 - 동적 할당이란 배열의 크기를 정해놓고 값을 할당하는 정적 할당과 다르게 입력된 값에 따라 배열의 크기를 조정한다.

 - 크기를 프로그램 실행중 결정할 수 있어 메모리를 사용하는데 효율적이다.

 - C++에서는 new 연산자를 사용 / C에서는 malloc을 써서 사용할 수 있다.

 - 사용한 후 할당한 메모리는 delete해줘야 한다.

 

int* array = new int[length]; 의 형식으로 사용하면 된다.

(이 문제에서는 숫자 계산이기 때문에 int형으로 선언하였다.)


내가 작성한 코드에서는 a[i] b[i]로 작성하였지만 *(a + i)로 사용가능하다.

사용 후 delete를 해줘야한다. (malloc의 경우 free)

#include <iostream>
using namespace std;

int main() {

	int t;

	cin >> t;

	int* sum = new int[t];
	int* a = new int[t];
	int* b = new int[t];


	for (int i = 0; i < t; i++) {
		cin >> a[i] >> b[i];
	}

	for (int i = 0; i < t; i++) {
		cout << a[i] + b[i] << endl;
	}

	delete sum;
	delete a;
	delete b;

}
반응형

'백준 > 단계별' 카테고리의 다른 글

[C++] 백준 5597  (0) 2022.12.09
[C++] 백준 2562  (0) 2022.12.09
[C++] 백준 1110  (0) 2022.12.08
[C++] 백준 2438, 2439  (0) 2022.12.08
[C++] 백준 2048  (0) 2022.12.04