2019女排世界杯个人技术统计_2019年女排世界杯第三轮

2019女排世界杯个人技术统计_2019年女排世界杯第三轮P3230 [HNOI2013]比赛

大家好,又见面了,我是你们的朋友全栈君。

传送门

我讨厌dfs……题解不想写……自己看吧……->这里

//minamoto
#include<bits/stdc++.h>
#define ll unsigned long long
#define fp(i,a,b) for(register int i=a,I=b+1;i<I;++i)
#define fd(i,a,b) for(register int i=a,I=b-1;i>I;--i)
using namespace std;
const ll Base=37,P=1e9+7;const int N=1005;
int n,m,a[N],b[N],s[N],su,sx,sy;map<ll,ll>h;
inline bool cmp(const int &x,const int &y){return x>y;}
ll dfs(int u,int v){
    ll res=0;if(u==n)return 1;if(a[u]+3*(n-v+1)<s[u])return 0;
    if(v>n){
        fp(i,u+1,n)b[i]=s[i]-a[i];sort(b+u+1,b+n+1);
        ll S=0;fp(i,u+1,n)S=S*Base+b[i];
        if(h.count(S))return h[S];
        else return h[S]=dfs(u+1,u+2);
    }
    if(a[u]+3<=s[u]&&sx)a[u]+=3,--sx,res+=dfs(u,v+1),a[u]-=3,++sx;
    if(a[u]+1<=s[u]&&a[v]+1<=s[v]&&sy)++a[u],++a[v],--sy,res+=dfs(u,v+1),--a[u],--a[v],++sy;
    if(a[v]+3<=s[v]&&sx)a[v]+=3,--sx,res+=dfs(u,v+1),a[v]-=3,++sx;
    return res%P;
}
int main(){
//  freopen("testdata.in","r",stdin);
    scanf("%d",&n);fp(i,1,n)scanf("%d",&s[i]),su+=s[i];
    sx=su-n*n+n,sy=(su-3*sx)>>1;sort(s+1,s+1+n,cmp);
    printf("%lld\n",dfs(1,2)%P);
}

转载于:https://www.cnblogs.com/bztMinamoto/p/10041365.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107174.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 于Linux-2.6.32内核上编译ipset-6.23的坎坷经历[通俗易懂]

    于Linux-2.6.32内核上编译ipset-6.23的坎坷经历[通俗易懂]新版本的ipset上周在儿童医院给小小看病等待叫号的间隙,收到了Netfilter邮件列表的推送消息,一览了ipset最新的6.23版本的新特性,很多正是我目前所需要的,特别是timeout和skbinfo参数的支持,具体的详情请自行查看manual,如果不想看那么多,我这里简单的贴一下:  timeout      All set types supportstheoptional

    2022年9月1日
    2
  • python mkv转mp4,如何将mkv格式转换成mp4视频呢

    python mkv转mp4,如何将mkv格式转换成mp4视频呢在日常生活中都会使用到MKV视频文件的。MKV视频文件主要是视频文件、音频文件和字幕压制的。MKV视频一般在网上都是可以直接下载的。各种种子和磁链下载的也基本都是MKV视频。但有时可能会碰到视频播放错误。无法播放或者不支持文件播放的。一般都是可以通过转换视频格式修改的。那今天就教大家怎么将mkv格式转换成mp4格式吧。1、首先点击下方的立即下载按钮然后弹出下载迅捷视频转换器的下载框。下载打开之后,…

    2022年10月16日
    6
  • iOS Charles 抓包指南 – 从入门到精通

    iOS Charles 抓包指南 – 从入门到精通iOSCharles抓包指南以下那知乎的请求举例子步骤Step1:安装Charles从https://www.charlesproxy.com/download/下载安装Charles最新版。Step2:注册LicenseCharles-&amp;gt;Help-&amp;gt;RegisterCharlesRegisteredname:你购…

    2022年5月31日
    81
  • 如何让用html制作404页面,网站404页面怎么做?

    如何让用html制作404页面,网站404页面怎么做?原标题:网站404页面怎么做?404页面具体怎么做:首先,你可以简单的做一个html页面,把它命名为:404.html页面;如果不会制作,最简单的办法就是找任何一个比较有名的网站,把它的404页面另存为下来,然后修改上面的文字,以及URL为自己的文字信息,再保存好上传到你网站的根目录就行了。404页面的注意点:我们做404页面不能让它直接跳转到首页,不然,首页有可能会遭到被K。怎样让错误页面跳转到…

    2022年7月27日
    9
  • rsync

    rsync

    2022年3月11日
    47
  • Mac安装brew,安装wget「建议收藏」

    Mac安装brew,安装wget「建议收藏」安装brewadmindeMacBook-Pro:wget-1.13.4admin$/usr/bin/ruby-e”$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install)”==>Thisscriptwillinstall:/usr/local/bin/brew/…

    2022年6月1日
    46

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号