반응형
안녕하세요? 수구리입니다.
이번 백준 문제풀이도 마찬가지로 1차원 배열에 대해서 풀어보고 있습니다.
지난 문제랑 굉장히 비슷합니다. 따라서 문제를 풀고 보시면 좋을것같네요!
문제는 아래 링크에 있습니다.
질문이나 댓글은 언제나 환영입니다!
[ 문제 ] 2577번: 숫자의 개수
[ 나의 풀이 ]
#include <iostream>
#include <vector>
#include <algorithm>
#define all(v) v.begin(), v.end()
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int a, cnt, res=0;
vector<int> v;
for(int i=0; i<10; i++){
cin >> a;
v.push_back(a % 42);
}
for(int i=0; i<10; i++){
cnt=0;
for (int j=i+1; j<10; j++){
if (v[i] == v[j]) cnt++;
}
if (cnt==0) res++;
}
cout << res;
return 0;
}
[ 설명 ]
1. 변수들을 선언해줍니다. 결과로 출력할 변수는 res 변수
2. int형 vector v를 선언
3. 수를 10개를 입력받을 것이기 때문에 for문을 총 10번 반복하면서 v에 int값 a를 추가
4. 그 다음 for문에서 i번째 요소와 i+1, i+2, ... ( < 10)번째 요소를 비교해가면서 값이 같다면 cnt값을 증가
5. 만약 같은 값이 없이 중첩 for문을 나오면 res값을 증가시킨다.
6. v의 모든 요소를 반복 비교를 수행한 뒤 마지막에 res값을 출력
반응형
'✏️ PS > Boj' 카테고리의 다른 글
[ C++ ] 백준 8958번: OX퀴즈 (0) | 2021.10.14 |
---|---|
[ C++ ] 백준 4344번: 평균은 넘겠지 (0) | 2021.10.11 |
[ C++ ] 백준 2577번: 숫자의 개수 (0) | 2021.10.06 |
[ C++ ] 백준 1546번: 평균 (4) | 2021.10.05 |
[ C++ ] 백준 2562: 최댓값 (0) | 2021.10.05 |