Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
29804 hi_hi 【J】T3 C++ 运行超时 0 2000 MS 444 KB 808 2024-05-27 17:16:01

Tests(0/25):


#include<bits/stdc++.h> using namespace std; long long n,vis[6005],ans,ji[6005],t=0; struct pt{ long long x,y; }a[6005]; bool cmp(pt a,pt b){ return a.y>b.y; } inline int jianzhi(long long deep){ if(deep==0)return 0; if(deep<3)return 1; if(a[ji[deep]].x>a[ji[deep-2]].x && a[ji[deep]].x<a[ji[deep-1]].x || a[ji[deep]].x>a[ji[deep-1]].x && a[ji[deep]].x<a[ji[deep-2]].x)return 1; return 0; } void dfs(long long deep){ for(int i=ji[deep]+1;i<=n;i++){ t++; if(vis[i]==0){ ji[deep+1]=i; if(jianzhi(deep+1)){ ans++; vis[i]=1; dfs(deep+1); vis[i]=0; ans%=1000000007; } } } } int main(){ scanf("%lld",&n); for(int i=1;i<=n;i++){ scanf("%lld %lld",&a[i].x,&a[i].y); } sort(a+1,a+n+1,cmp); dfs(0); printf("%lld %lld",ans,t); }


测评信息: