#include<bits/stdc++.h>
using namespace std;
long long n,m[100005],minn=LONG_LONG_MAX,sum=0,ans=1;
map<long long,long long>mt;
int main(){
ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
cin>>n;
for(int i=1;i<=n;i++){
cin>>m[i];
if(m[i]>minn){
sum++;
mt[m[i]]++;
}
minn=min(minn,m[i]);
}
for(int i=1;i<=n;i++){
if(mt[m[i]]!=0){
ans*=(mt[m[i]]+1);
mt[m[i]]=0;
}
}
cout<<ans;
return 0;
}
用的组合数学,但不知道为啥不过,(感觉我的问题挺大)