怎麼說,數字dp還是我的噩夢啊,細節太恐怖了。
但是這章感覺又和之前的學的數字dp有差異?(應該是用dp預處理降低時間複雜度,好勁啊,不過以前都是記憶化搜尋的應該不會差多少)
poj3208 f[i][0~2]表示第i位,開頭連續j個6的情況數,[3]表示魔鬼數的個數,這樣可以方便得出區間內有多少魔鬼數,不停的試填到底即可。
#include#includepoj3208#include
#include
#include
#include
using
namespace
std;
typedef
long
long
ll;ll f[
20][4
];void
initf()
}int
main()
printf("%d
",j);
break
; }}}
printf("\n
");}
return0;
}
月之謎 這題找不到原題,但是lyd有資料。乙個看似很複雜多餘實則很重要的定義:f[i][j][k][p]表示位數為i,數字和為j,對k取模等於p的數的個數,k這一維無法省略,原因是當前面增加乙個數字j改變對應的模數也改變。預處理完了,就一位一位列舉,只有上限邊緣是無法確定值的,上限之下都可以通過預處理求得。
#include#include月之謎#include
#include
#include
#include
using
namespace
std;
typedef
long
long
ll;int mod(int d,int mod)
int mi[20],f[13][110][110][110
];void
initf()
}int maxw(int
i)int getnum(int x,int i)
bool calc(int
x)int getmoon(int x,int sum,int pun,int
i)
return
ret;
}int num=getnum(x,i),ret=0
;
for(int m=0;m)
ret+=getmoon(x,sum+num,pun+mi[i]*num,i-1
);
return
ret;
}int
main()
return0;
}
移動OU報錯 0x5
以域管理員移動ou,報如下錯誤。初步認定為許可權不足,然後上網搜尋解決方案。類似的有 嘗試了 一的解決方法,勾上 域管理員繼承所屬組的許可權 include inheritable permissions from this object s parent but it didn t work 於是...
C語言雜記 0x0B
首先看兩個例子 一 二 這兩個例子裡面不同的地方就是s的不同,c語言程式在執行的時候記憶體分配有這樣的規則 區域性變數在棧中自動生成記憶體,比如上面所說的s就是在棧中生成記憶體 而s 指向的內存在常量區,就類似於我們在所有程式之前宣告char s 100 一樣 棧由編譯器自動生成釋放,而常量區的記憶...
《C 0x漫談》系列
05年開始關注c 0x,其時c 0x的大部分草案其實都已經初具雛形。但幾個重大的特性 concepts,rvalue,memory model,variadic templates等都還在激烈的動盪當中。於是一路看著這些特性不斷成長,不斷出revisions。其間也跟標準委員會中的一些大牛們,如pe...