結果

提出番号 1905
提出者 mamekin
言語 C++
提出日時 2018-08-04 14:29:44
問題名 (71)音楽ゲーム
結果 WA
点数 0%

テストケース

テストケース 結果 得点 実行時間 メモリ使用量
1 WA 0% 10ms 8672KB
2 WA 0% 7ms 8720KB
3 WA 0% 7ms 8720KB
4 WA 0% 15ms 7792KB
5 WA 0% 10ms 8256KB
6 WA 0% 13ms 8704KB
7 WA 0% 3ms 8144KB
8 WA 0% 14ms 7808KB
9 WA 0% 21ms 7248KB
10 WA 0% 15ms 8192KB
11 WA 0% 14ms 8416KB
12 WA 0% 27ms 8368KB
13 WA 0% 8ms 7248KB
14 WA 0% 23ms 8400KB
15 WA 0% 6ms 8336KB
16 WA 0% 3ms 8448KB
17 WA 0% 28ms 7632KB
18 WA 0% 21ms 8416KB
19 WA 0% 10ms 8080KB
20 WA 0% 14ms 8704KB
21 WA 0% 25ms 8704KB
22 WA 0% 22ms 8736KB
23 WA 0% 28ms 8400KB
24 WA 0% 3ms 8432KB
25 WA 0% 27ms 8720KB
26 WA 0% 30ms 8256KB
27 WA 0% 11ms 8672KB
28 WA 0% 29ms 8064KB
29 WA 0% 17ms 8416KB
30 WA 0% 24ms 8416KB

ソースコード

#define _USE_MATH_DEFINES
#include <cstdio>
#include <iostream>
#include <sstream>
#include <fstream>
#include <iomanip>
#include <algorithm>
#include <cmath>
#include <complex>
#include <string>
#include <vector>
#include <array>
#include <list>
#include <queue>
#include <stack>
#include <set>
#include <map>
#include <bitset>
#include <numeric>
#include <limits>
#include <climits>
#include <cfloat>
#include <functional>
#include <iterator>
#include <memory>
using namespace std;

const int MOD = 1000000007;

int main()
{
    int n;
    cin >> n;
    vector<int> a(n);
    for(int i=0; i<n; ++i)
        cin >> a[i];

    long long ans;
    int i = 0;
    while(i < n){
        int len = 1;
        while(i + len < n && a[i] == a[i+len])
            ++ len;

        if(i == 0){
            ans = len;
        }
        else{
            ans += ans * len;
            ans %= MOD;
        }
        i += len;
    }
    cout << ans << endl;

    return 0;
}