알고리즘/BOJ

백준 11974번 Subsequences Summing to Sevens

꾸준함. 2018. 9. 23. 14:26

문제 링크입니다: https://www.acmicpc.net/problem/11974


같은 학교 학우이신 Green55님 덕분에 풀 수 있었던 문제였습니다.

이 문제는 푸는 방법을 알아야지만 쉽게 접근할 수 있었던 문제였던 것 같습니다.


i < j일 때 pSum[i - 1] % MOD == pSum[j] % MOD라면 i ~ j의 합은 7의 배수인 것을 이용하면 되는 문제였습니다.


#include <iostream>

#include <vector>

#include <algorithm>

using namespace std;

 

int result;

 

int main(void)

{

        ios_base::sync_with_stdio(0);

        cin.tie(0);

        int N;

        cin >> N;

 

        vector<int> v[7]; //MOD 7 -> 0 ~ 6

        int idx = 0;

        for (int i = 1; i <= N; i++)

        {

                 int num;

                 cin >> num;

 

                 idx += num;

                 idx %= 7;

                 v[idx].push_back(i); //합의 MOD를 인덱스로

        }

 

        for (int i = 0; i < 7; i++)

                 if (v[i].size())

                         result = max(result, v[i].back() - v[i].front());

 

        cout << result << "\n";

        return 0;

}


개발환경:Visual Studio 2017


지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

반응형

'알고리즘 > BOJ' 카테고리의 다른 글

백준 1713번 후보 추천하기  (0) 2018.09.24
백준 12934번 턴 게임  (0) 2018.09.23
백준 11973번 Angry Cows(Silver)  (0) 2018.09.23
백준 11977번 Angry Cows(Bronze)  (0) 2018.09.23
백준 11976번 Promotion Counting  (0) 2018.09.23