반응형
https://www.acmicpc.net/problem/10807
10807번: 개수 세기
첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄에는 정수가 공백으로 구분되어져있다. 셋째 줄에는 찾으려고 하는 정수 v가 주어진다. 입력으로 주어지는 정수와 v는 -100보다 크거
www.acmicpc.net
코드
#include <iostream>
using namespace std;
int main()
{
int n, v, arr[201] = { }, input;
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> input;
if (input < 0)
input = ((-1) * input) + 100;
arr[input]++;
}
cin >> v;
if (v < 0)
v = ((-1) * v) + 100;
cout << arr[v] << endl;
return 0;
}
풀이
총 n개의 정수가 주어졌을 때 정수 v가 몇 개인지 구하는 문제이다.
찾고자 하는 정수 v의 범위가 -100 ~ +100 이기 때문에 정수를 저장할 때 음수를 저장하는 방법이 필요했다.
그래서 음수가 입력되면 배열의 101번째 인덱스부터 차례대로 저장되도록 하였다.
반응형
'문제 해결 > BaekJoon' 카테고리의 다른 글
[백준] [C++] 5054번 주차의 신 (2) | 2023.01.07 |
---|---|
[백준] [C++] 10818번 최소, 최대 (0) | 2023.01.06 |
[백준] [C++] 3460번 이진수 (0) | 2023.01.06 |
[백준] [C++] 1292번 쉽게 푸는 문제 (0) | 2023.01.06 |
[백준] [C++] 3052번 나머지 (0) | 2023.01.06 |