Submission #98453

#TimeUsernameProblemLanguageResultExecution timeMemory
98453Leonardo_PaesZoltan (COCI16_zoltan)C++11
7 / 140
128 ms2008 KiB
#include <bits/stdc++.h> using namespace std; long long vet[200100]; long long power(long long x, long long y, long long p){ long long res = 1; x = x % p; while (y > 0) { if (y & 1) res = (res*x) % p; y = y>>1; x = (x*x) % p; } return res; } int main(){ int n; cin >> n; for(int i=1; i<=n; i++){ cin >> vet[i]; } sort(vet+1, vet+n+1); long long int resp=1, atual=1; long long int mod = 1e9 + 7; int length=0; for(int i=1; i<=n; i++){ if(vet[i+1]==vet[i]){ atual++; } else{ length++; if(atual==1)atual=0; resp=(resp*power(2,atual-1,mod))%mod; resp=(resp*atual)%mod; atual=0; } } cout << length << " " << resp%mod << endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...