This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
using namespace std;
int main(){
int F,K,M;
cin>>F>>K>>M;
vector<vector<int>> cnt(F+1,vector<int>(K+1));
vector<pair<int,int>> a;
for(int i=0;i<F;i++){
int len,gem; cin>>len>>gem;
a.push_back(make_pair(len,gem));
}
sort(a.begin(),a.end());
for(int i=0;i<F;i++){
cnt[i][a[i].second]++;
for(int j=0;j<i;j++){
if(a[j].first*2<=a[i].first){
for(int k=0;k<=K;k++){
cnt[i][k]+=cnt[j][k];
cnt[j][k]=0;
}
}
}
}
int ans=0;
for(int i=0;i<F;i++){
int t=1;
for(int j=0;j<=K;j++){
t*=(cnt[i][j]+1);
t%=M;
}
if(t<0) t+=M;
ans+=(t-1);
}
ans-=1;
if(ans<0) ans+=M;
while(ans>=M) ans-=M;
cout<<ans<<'\n';
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |