NC22731. 小G数数
描述
输入描述
第一行一个数n。接下来一行n个数,描述排列A。
输出描述
一行一个整数,表示满足要求的四元组个数。
示例1
输入:
4 1 3 2 4
输出:
1
C(clang 3.9) 解法, 执行用时: 167ms, 内存消耗: 480K, 提交时间: 2019-03-08 21:26:27
#include<stdio.h> int x[5000],n; int main(){ int ans=0,a,b,c,d; scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",&x[i]); for(a=1;a<=n-3;a++){ for(c=a+2;c<=n-1;c++) if(x[c]>x[a]){ for(b=a+1;b<c;b++){ if(x[b]>x[c]) for(d=c+1;d<=n;d++){ if(x[d]>x[b]) ans++; } } } } printf("%d\n",ans); return 0; }
C++11(clang++ 3.9) 解法, 执行用时: 845ms, 内存消耗: 496K, 提交时间: 2019-03-09 14:15:44
#include<bits/stdc++.h> int main() { int n,i,j,k,l,A=0,a[600]; std::cin>>n; A=0; for(i=0;i<n;i++) std::cin>>a[i]; for(i=0;i<n;i++) for(j=i+1;j<n;j++) if(a[i]<a[j]) for(k=j+1;k<n;k++) if(a[j]>a[k]) for(l=k+1;l<n;l++) if(a[i]<a[k]&&a[j]<a[l]) A++; std::cout<<A; }