#include<iostream>
#include <conio.h>
using namespace std;
int f(long long k)
{
long long ans=1;
for(int i=2;i<=k;i++)
ans*=i;
return ans;
}
int main()
{
int n;
cin>>n;
int a[n+1];
int s=0;
for(int i=1;i<=n;i++)
cin>>a[i];
for(int i=1;i<=n;i++)
{
int p=0;
for(int j=1;j<i;j++)
if(a[j]<a[i])
p++;
if(a[i]-1-p>0)
s+=((a[i]-1)-p)*f(n-p-1);
p++;
}
cout<<s+1;
return 0;
}
#include <iostream>
#include <conio.h>
#include <cmath>
using namespace std;
long long po(int a,int b)
{
long long ans=1;
for(int i=1;i<=b;i++)
ans*=a;
return ans;
}
int t(long long k)
{
int ans=0;
while(k>0)
{
ans++;
k/=10;
}
return ans;
}
long long re(long long k)
{
long long ans=0;
int p=t(k)-1;
while(k>0)
{
ans+=po(10,p)*(k%10);
k/=10;
p--;
}
return ans;
}
int main()
{
int n;
long long max;
long long ans;
cin>>n;
long int a[n+1];
for(int i=0;i<n;i++)
cin>>a[i];
max=re(a[0]);
ans=a[0];
for(int i=1;i<=n;i++)
if(re(a[i])>max)
{
max=re(a[i]);
ans=a[i];
}
cout<<ans;
getch();
return 0;
}
#include<iostream>
#include<fstream>
#include<string>
#include<vector>
using namespace std;
string a;
vector<int> m[10],ans;
bool seen[10];
bool check(int x){
for(int i=0;i<m[x].size();i++){
if(!seen[m[x][i]])return 0;
}
return 1;
}
void T_p(int x){
if(x==10)return;
for(int i=0;i<10;i++){
if(!seen[i]&&check(i)){
seen[i]=1;
ans.push_back(i);
T_p(x+1);
return;
}}
}
int main(){
ifstream fin("keylog.txt");
for(int i=0;i<50;i++){
a="";
fin>>a;
m[a[1]-'0'].push_back(a[0]-'0');
m[a[2]-'0'].push_back(a[1]-'0');
}seen[4]=seen[5]=1;
T_p(2);
for(int i=0;i<ans.size();i++)cout<<ans[i];
cout<<endl;
cin>>a;
return 0;
}
#include <iostream>
#include <conio.h>
#include <cmath>
using namespace std;
int f(int a,int b)
{
int a1[10]={};
int b1[10]={};
while(a>0)
{
a1[a%10]++;
a/=10;
}
while(b>0)
{
b1[b%10]++;
b/=10;
}
for(int i=0;i<10;i++)
if(a1[i]!=b1[i])
return 0;
return 1;
}
int p(int k)
{
for(int i=2;i*i<=k;i++)
if(k%i==0)
return 0;
return 1;
}
int main()
{
for(int i=1000;i<=9999;i++)
for(int t=1;t<=9999-i;t++)
if(p(i)&&p(i+t)&&p(i+(2*t))&&f(i,i+t)&&f((i+(2*t)),i))
{
cout<<i<<" "<<i+t<<" "<<i+2*t;
cout<<endl;
}
getch();
return 0;
}