BZOJ4521 & 로곡P4124 [CQOI2016] 핸드폰 번호

검색 대법
코드가 비교적 명확하면 자세하게 설명하지 않겠다. 전도 0을 피하기 위해서, 우리는 직접 일등을 열거하면 된다
코드
//By AcerMo
#include
#include
#include
#include
#include
#define lli long long int
using namespace std;
lli num[12];
lli f[11][11][11][2][2][2][2];
inline lli dfs(int p,int l1,int l2,bool can,bool jud,bool l4,bool l8)
{
	//l1     ,l2     ,can              ,l4->4     ,l8   
    if(l4&&l8) return 0;
    if(p<=0) return can;
    if (f[p][l1][l2][can][jud][l4][l8]!=-1) return f[p][l1][l2][can][jud][l4][l8];
    lli emm=!jud?num[p]:9,ans=0;
    for(int i=0;i<=emm;i++)
    ans+=dfs(p-1,i,l1,can||(i==l2&&i==l1),jud||(i>l>>r;slove(l-1,r);
    return 0;
}

좋은 웹페이지 즐겨찾기