結果

提出番号 2109
提出者 ScrapZero
言語 C++
提出日時 2018-08-04 15:18:30
問題名 (71)音楽ゲーム
結果 AC
点数 100%

テストケース

テストケース 結果 得点 実行時間 メモリ使用量
1 AC 100% 11ms 8112KB
2 AC 100% 7ms 8400KB
3 AC 100% 11ms 7648KB
4 AC 100% 19ms 9568KB
5 AC 100% 15ms 8512KB
6 AC 100% 19ms 9552KB
7 AC 100% 3ms 8704KB
8 AC 100% 16ms 9552KB
9 AC 100% 28ms 11600KB
10 AC 100% 16ms 9552KB
11 AC 100% 18ms 9552KB
12 AC 100% 29ms 13712KB
13 AC 100% 11ms 7824KB
14 AC 100% 28ms 11600KB
15 AC 100% 7ms 7232KB
16 AC 100% 4ms 8112KB
17 AC 100% 36ms 13728KB
18 AC 100% 30ms 11616KB
19 AC 100% 12ms 8112KB
20 AC 100% 18ms 9552KB
21 AC 100% 36ms 13712KB
22 AC 100% 34ms 12640KB
23 AC 100% 35ms 13712KB
24 AC 100% 3ms 7808KB
25 AC 100% 35ms 13712KB
26 AC 100% 37ms 13712KB
27 AC 100% 15ms 8480KB
28 AC 100% 33ms 13696KB
29 AC 100% 21ms 10608KB
30 AC 100% 31ms 12640KB

ソースコード

//#pragma once
#include <stdio.h>
#include <string>
#include <iostream>
#include <queue>
#include <algorithm>
#include <sstream>
#include <vector>
#include <math.h>
#include <set>

using namespace std;

long long N, M, K,a,b,c,d,e,H,W;
long long an[300000];
long long ni[300000]={};
long long A[2000][2000] = {};
long long t[200001] = {};
bool f[601][601];
string S;
set <long long>sll;
vector <long long>vll,vl;
typedef pair<long long, long long> pl;
pl buf;


int main() {
	cin >> N;
	for (int i = 0; i < N; i++) {
		cin >> t[i];
		vll.push_back(t[i]);
	}
	sort(vll.begin(), vll.end());
	a = 1;
	ni[0] = 1;
	for (int i = 1; i < N; i++) {
		if (vll[i] == vll[i - 1]) {
			ni[i] = ni[i - 1];
		}
		else {
			ni[i] = a;
		}
		a +=ni[i];
		a %= 1000000007;
	}

	c = 0;
	for (int i = 0; i < N; i++) {
		c += ni[i];
		c %= 1000000007;
	}
	cout << c << endl;

	return 0;
}