[Hackerrank] C++ - 08 Arrays Introduction

후유카와·2024년 11월 22일

Hackerrank

목록 보기
8/59

08. Arrays Introduction

[ 난이도: Easy | 분야: Introduction ]

1. 내용 정리

배열이라는 것은 연속적인 메모리 주소를 사용하며 동일한 자료형의 데이터들을 저장하고 있는 것을 말한다.

각 주소는 인덱스를 더함으로써 접근할 수 있다.

크기가 10인 배열은 다음과 같이 정의할 수 있다.

int arr[10]; // Declares an array named arr of size 10, store 10 integers.

메모 C와는 다르게 C++는 malloc()과 같은 특수한 call을 하지 않아도 배열을 dynamic 하게 할당할 수 있다.

만약 n = 10이라면, int arr[n] 은 10개의 정수를 갖는 배열을 만든다.

배열의 요소에 접근하는 방법:

Indexing in arrays starts from 0.
So the first element is stored at arr[0],
the second element at arr[1] and so on through arr[9].

2. 과제

N 개의 정수를 가지고 있는 배열이 주어지고 역순으로 각 요소들을 출력해라.

입력 형식

첫 번째 줄에서는 N이라는 정수를 포함한다.(N은 정수의 개수이다.)

다음 줄에는 N 개의 공백으로 분리된 정수들이 있다.

제약 사항

N은 1 보다 크거나 같고, 1000 보다 작거나 같다.

각 요소들은 1보다 크거나 같고 10,000보다 작거나 같다.

출력 형식

공백으로 분리된 단일 줄로 N개의 정수들을 역순으로 출력해라.

입력 예시

4
1 4 3 2

출력 예시

2 3 4 1

문제

#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 */   
    return 0;
}

더보기

정답

#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 = 0;
    cin >> N;
    cin.ignore();
    int arr[N];
    for(int i = 0; i <= N; i++) {
        cin >> arr[i];
    }
    for(int i = N-1; i >= 0; i--) {
        cout << arr[i];
        if(i != 0) cout << " ";
    } 
    return 0;
}

ⓒ Hackerrank. All Rights Reserved.

profile
안녕하세요! 저는 전자공학을 전공하며 하드웨어와 소프트웨어 모두를 깊이 있게 공부하고 있는 후유카와입니다. Verilog HDL, C/C++, Java, Python 등 다양한 프로그래밍 언어를 다루고 있으며, 최근에는 알고리즘에 대한 학습에 집중하고 있습니다. 기술적인 내용을 공유하고, 함께 성장할 수 있는 공간이 되기를 바랍니다. 잘못된 내용이나 피드백은 언제나 환영합니다! 함께 소통하며 더 나은 지식을 쌓아가요. 감사합니다!

0개의 댓글