首页 > 其他分享 >B. Athlete Welcome Ceremony

B. Athlete Welcome Ceremony

时间:2024-11-04 14:43:01浏览次数:1  
标签:Ceremony min int Athlete Welcome 305 long sum

  • (i)表达的是i不为0即为真
点击查看代码
#include <iostream>
using namespace std;
const int mod=1000000007;
long long f[305][305][305][3];
long long g[305][305][305];
long long h[305][305][305];
int sum[305];
long long H(int i,int j,int k)
{
    if(i>=0&&j>=0&&k>=0)
    {
        return h[i][j][k];
    }
    return 0;
}
int main()
{
    int n,Q;
	cin>>n>>Q;
    string s;
    cin>>s;
    for(int i=1;i<=n;i++)
    {
        sum[i]=sum[i-1]+(s[i-1]=='?');
    }
    g[0][0][0]=1;
    for(int i=1;i<=n;i++)
    {
        for(int j=0;j<=sum[i];j++)
        {
            for(int k=0;j+k<=sum[i];k++)
            {
                if(s[i-1]!='?')
                {
                    f[i][j][k][s[i-1]-'a']=(g[i-1][j][k]-f[i-1][j][k][s[i-1]-'a'])%mod;
                    g[i][j][k]=f[i][j][k][s[i-1]-'a'];
                    continue;
                }
                if(j)
                {
                    f[i][j][k][0]=(g[i-1][j-1][k]-f[i-1][j-1][k][0])%mod;
                }
                if(k)
                {
                    f[i][j][k][1]=(g[i-1][j][k-1]-f[i-1][j][k-1][1])%mod;
                }
                if(sum[i]-j-k)
                {
                    f[i][j][k][2]=(g[i-1][j][k]-f[i-1][j][k][2])%mod;
                }
                g[i][j][k]=(f[i][j][k][0]+f[i][j][k][1]+f[i][j][k][2])%mod;
            }
        }
    }
    for(int i=0;i<=sum[n];i++)
    {
        for(int j=0;j<=sum[n];j++)
        {
            for(int k=0;k<=sum[n];k++)
            {
                h[i][j][k]=H(i-1,j,k)+H(i,j-1,k)+H(i,j,k-1)-H(i-1,j-1,k)-H(i-1,j,k-1)-H(i,j-1,k-1)+H(i-1,j-1,k-1);
				if(i+j+k==sum[n])
                {
                    h[i][j][k]+=g[n][i][j];
                }
                h[i][j][k]%=mod;
            }
        }
    }
    for(int i=1;i<=Q;i++)
    {
        int x,y,z;
        cin>>x>>y>>z;
        x=min(x,sum[n]);
        y=min(y,sum[n]);
        z=min(z,sum[n]);
        cout<<(h[x][y][z]+mod)%mod<<endl;
    }
    return 0;
}

标签:Ceremony,min,int,Athlete,Welcome,305,long,sum
From: https://www.cnblogs.com/watersail/p/18525219

相关文章

  • nginx部署出现 Welcome to nginx! If you see this page 该如何解决
    当你部署nginx的时候出现,ping域名网站可以通,但是访问不了网站怎么办,不用急,往下看;1.问题所在其实出现以上的问题就代表你已经成功搭建好了nginx,只是现在默认访问的时候跳转到了nginx的首页问题。2.解决方案默认情况下,Nginx安装后会使用默认配置文件,这些文件通常会指向一个默......
  • CF896E Welcome home, Chtholly
    [题目通道](Welcomehome,Chtholly-洛谷)#include<iostream>#pragmaGCCoptimize(1)#pragmaGCCoptimize(2)#pragmaGCCoptimize(3)#pragmaGCCtarget("avx")#pragmaGCCoptimize("Ofast")#pragmaGCCoptimize("inline")#pra......
  • welcome to my new start
    thisisanewstart.I'mehua'swife.QwQ放个缺省源:#include<bits/stdc++.h>typedeflonglongLL;typedefunsignedlonglongULL;#definerep(i,a,b)for(inti=(a);i<=(b);i++)#defineper(i,a,b)for(inti=(a);i>=(b);i--......
  • [极客大挑战 2020]Roamphp1-Welcome 1
    前端代码审计,信息收集,sha1绕过进来之后发现什么都没有,什么东西都找不到,扫后台也没东西,可以看到在请求头中有异常尝试切换get传参为post传参爆出了源码<?phperror_reporting(0);if($_SERVER['REQUEST_METHOD']!=='POST'){header("HTTP/1.1405MethodNotAllowed")......
  • Welcome to the Internet. What would you prefer?
    前言:今天T1数据也太水了。voiddfs(intu,intfa,intl){ siz[u]=1; tsum[u]=a[u]; f[u][0]=l*abs(a[u]-x); f[u][1]=l*abs(a[u]-y); for(constauto&i:e[u]){ intv=i.first,w=i.second; if(v==fa)continue; dfs(v,u,w); for......
  • Welcome to Tokyo!
    首先有简单的\(O(n^3)\)\(dp\),可以决策单调性优化到\(O(n^2)\),还可以进一步利用不同差分数\(O(\sqrtn)\)优化到\(O(n\sqrtn\logn)\),不过这个方向已经没什么前途了考虑线性规划形式,设\(a_{1\simn}\)表示第\(i\)天是否开宴,\(b_{1\simm}\)表示是否交到第\(i\)个朋......
  • Nebius Welcome Round (Div. 1 + Div. 2) B. Vaccination
    你管理一个疫苗接种站,将会有\(n\)个人前来接种疫苗。第\(i\)个到来的人时间为\(t_i\),已知每个人的等待时间不会超过\(w\)分钟。疫苗存放在特质冰箱中,一袋疫苗有\(k\)支,当一袋疫苗在\(x\)时刻打开时,它的有效时间为\(d\)。现在询问最少需要打开多少袋疫苗满足\(n\)......
  • ansible-playbook批量安装httpd,按主机名提供不同的index.html(如node1的index.html欢迎
    [root@ansible~]#vim/etc/ansible/hosts[webservers]10.0.0.150ansible_connection=local10.0.0.160#创建角色相关目录[root@ansiblehtml]#mkdir-pv/data/ansible/roles/httpd/{tasks,handlers,files}mkdir:createddirectory'/data/ansible'mkdir:crea......
  • Welcome!!!
    欢迎来到Penguin_Chen的博客园个人简介男初三坐标:湖南长沙就读于长沙市一中金山桥喜欢看特摄和追番南极原住民的由来......
  • Welcome
    您好,欢迎您来到我的博客,我是一个来自中国的信息学竞赛选手。您可以在这些地方找到我:洛谷博客园CodeforcesGithubHydro祝您生活愉快!......