코드포스(CodeForce)

Educational Codeforces Round 28 - A. Curriculum Vitae

cepiloth 2018. 8. 17. 18:09
반응형


1. 문제


2. 알고리즘

키워드 - 구현


* 어설픈 해석

히데오 코지마는 코나미에 퇴사 이후 새로운 직장을 구하기 위해서 이력서를 작성 중이다. 그는 성공한 게임과 실패한 게임에 n 개의 경력을 갖고 있으며 이력서를 작성 하면서 성공 하지 못한 게임을 제거 하여 가장 많은 n 개의 제품의 수를 출력 하려고 한다.


* 문제 정의

0 은 실패한 게임

1 은 성공한 게임

성공한 게임과 실패한 게임을 Count 해서 가장 많은 제품의 수를 출력


* 문제 접근

1 다음엔 0 오면 리셋 

0 이 많거나 1이 많거나 둘중 많은 count 를 총합 하여 출력


3. 코드


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
32
33
34
35
36
37
38
39
40
41
42
#include <stdio.h>
 
#include <iostream>
#include <vector>
#include <algorithm>
#include <functional>
#include <string>
 
using namespace std;
 
int main() {
 
    int n;
    cin >> n;
 
    vector<int> arr(n);
    for(int i=0;i<n; i++) {
        cin >> arr[i];
    }
 
    int sol = 0;
    for(int i=0; i<=n; i++) {
        int cnt = 0;
        //[0 인덱스 부터 i 까지의 실패한 게임을 count]
        for (int j = 0; j < i; ++j)
        {
            if(arr[j]==0)
                cnt++;
        }
        //[i 인덱스 부터 n 까지 성공한 게임을 count]
        for (int j = i; j < n; ++j)
        {
            if(arr[j]==1)
                cnt++;
        }
        //[가장 큰 count 를 갱신 한다.
        sol = max(sol, cnt);
    }
 
    cout << sol << endl;
    return 0;
}
cs

반응형