티스토리 뷰
#include <vector>
#include <algorithm>
using namespace std;
int one[5] = {1, 2, 3, 4, 5};
int two[8] = {2, 1, 2, 3, 2, 4, 2, 5};
int three[10] = {3, 3, 1, 1, 2, 2, 4, 4, 5, 5};
vector<int> solution(vector<int> answers) {
vector<int> answer;
vector<int> cnt(3);
int i, pos1 = 0, pos2 = 0, pos3 = 0;
for(i = 0;i<answers.size();i++){
if(answers[i] == one[pos1]) cnt[0]++;
if(answers[i] == two[pos2]) cnt[1]++;
if(answers[i] == three[pos3]) cnt[2]++;
pos1 = (pos1+1)%5;
pos2 = (pos2+1)%8;
pos3 = (pos3+1)%10;
}
int max = *max_element(cnt.begin(), cnt.end());
for(i = 0;i<3;i++){
if(max == cnt[i]) answer.push_back(i+1);
}
return answer;
}
새로 배운 것
*max_element(vector.begin(), vector.end())
벡터 내에서 최대값을 구한다.
반복자 iterator : 컨테이너의 원소를 가리킨다.
최대값에 해당하는 반복자를 반환하기 때문에 그 반복자가 가리키는 값을 가져오기 위해서 *를 붙인다.
C에서의 포인터와 달라서 헷갈리지만 유용한 것 같다.
'알고리즘 > C++' 카테고리의 다른 글
[C++] 프로그래머스 K번째 수 (0) | 2020.02.25 |
---|---|
[C++] 프로그래머스 같은 숫자는 싫어 (0) | 2020.02.25 |
[C++] 프로그래머스 문자열 압축 (2020 카카오 공채) (0) | 2020.02.25 |
[C++] 프로그래머스 완주하지 못한 선수 (0) | 2020.02.25 |
[C++] 프로그래머스 체육복 (탐욕법(Greedy)) (0) | 2020.02.25 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- django pythoneverywhere
- 웹 배포
- Django
- ModelForm Form 차이
- iOS 데이터베이스
- django 개발일지
- python 웹 배포
- 테이블출력안됨
- django 로그인접근
- 까만 화면
- django 태그
- Realtime Database
- iOS UITableView 출력안됨
- django tag
- django 게시판
- django clean
- 데이터베이스 추천
- pythonanywhere배포방법
- pythonanywhere배포
- cleaned_data
- CellForRowAt Not Called
- 알파벳 카운팅
- UITableViewController Not Working
- 장고 태그달기
- 실시간 데이터베이스
- iOS 검은 화면
- iOS 화면 안나옴
- 장고 게시판
- CellForRowAt 호출안됨
- Firebase 데이터베이스 추천
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함