幸运快三

day17

wdnmd什么垃圾网站幸运快三,把我两道题分搞没了,实际得分50/300,应该得分150/300;

无话可说;

暴力枚举;

数论+DP;

几何等;

T1先枚举行的情况,再枚举列的情况;

分享图片
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring> 
using namespace std;
int xx[20],yy[20],ans=2147483647;
char a[20][20],d;
int n,m,r,c;
void dfs(int x,int tot)
{
    if(x>n)
    {
        memset(yy,0,sizeof(yy));
        for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++)
        {
            if(!xx[i]&&a[i][j]==X)yy[j]=1;
        }
        for(int j=1;j<=m;j++)
        {
            if(yy[j])
            {
                for(int k=0;k<c;k++)
                yy[min(j+k,m)]=0;
                tot++;
            }
        }
        ans=ans<tot?ans:tot;
        return;
    }
    else
    {
        for(int i=x;i<=min(x+r,n);i++)xx[i]=1;
        dfs(x+r,tot+1);
        for(int i=x;i<=min(x+r,n);i++)xx[i]=0;
    }
    dfs(x+1,tot);
}
int main()
{
    cin>>n>>m;
    for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)
    {
        d=getchar();
        while(d!=.&&d!=X)
        d=getchar();
        a[i][j]=d;
    }
    cin>>r>>c;
    dfs(1,0);
    cout<<ans<<endl;
    return 0;
}
View Code

T2

相关文章
相关标签/搜索
彩运来十分六合-十分六合单双 电力资讯