출처 : HackerRank - Arrays Introduction
문제
요약
입력받은 정수 배열을 역순으로 출력하세요.
예시입력
4 // 다음줄에 나올 정수의 갯수입니다.
1 4 3 2 // 공백으로 구별된 정수를 제공합니다.
예시출력
2 3 4 1 // 입력받은 역순으로 출력합니다.
풀이
C 와 달리 C++ 에서는 new
키워드를 사용하여 동적으로 배열을 선언하는 것이 가능합니다. (물론 C 에서도 malloc 함수를 사용하여 동적으로 메모리를 할당 할 수 있습니다) 때문에 첫줄의 입력값을 이용하여 정수 배열을 생성하고, 이에 반복문을 사용하여 입력값을 저장합니다. 다시 반복문을 역순으로 인덱싱하면서 돌아서 화면에 출력하면 요구사항을 만족하는 프로그램이 작성됩니다.
#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
/* Enter your code here. Read input from STDIN. Print output to STDOUT */
int N;
cin >> N;
// 동적으로 배열을 정의하였습니다.
int *A = new int[N];
for (int i=0;i<N;i++) {
cin >> A[i];
}
for (int i=N-1;i>=0;i--) {
cout << A[i] << " ";
}
return 0;
}
'프로그래밍 언어 > C++' 카테고리의 다른 글
C++ 가변 배열(Variable Sized Arrays) (0) | 2020.02.10 |
---|---|
C++ String (0) | 2018.10.19 |
C++ 클래스(Class) (0) | 2018.07.06 |
Functions (0) | 2018.06.13 |
Say "Hello, World!" With C++ (0) | 2018.06.12 |