範圍$100$
比較裸的式子
$f[i][j]$表示列舉到第$i$位有沒有和為$j$方案
只有$0$或$1$ $f[i][j]=f[i-1][j-val*val]$
答案$\sum\limits f[n][i]$
範圍$1000000$$((1-100)^2 *100)$
複雜度**,可以滾動陣列,得17分
考慮優化,$bitset$,
$bitset$表示實際值是否可以湊出
$f[i]|=f[i-1]<
注意我們這裡維護的是乙個類似字首和的東西
例如(舉個例子不保證正確性)
你$f[1]$二進位制下$11$,(即可湊出1 , 2)
然後你$f[2]$可以取$1$,那麼你在第二位可以湊出就是$011$(可湊出2,3)
#includeusingview codenamespace
std;
#define ll long long
#define a 1111111bitset
f[101
];ll a[
101],b[101
];ll n;
intmain()
}printf(
"%lld\n
",1ll*f[n].count());
}
牛客 283E 貪心只能過樣例(模擬)
題幹 小西是單身狗,所以她不喜歡看到有cp在秀恩愛!有一天,小西出來閒逛,發現街上的行人都排成了一排,並且可以用這種形式表示 mmfmmfffmmm 其中m表示男孩子,f表示 的男孩子 小西想讓所有的cp都消失!小西可以把任意一對 mf 或者 fm 趕走並變為乙個真正的小姐姐 j 例如上述的例子可以...
計蒜客 網頁跳轉 只能過一半樣例的奇葩演算法
問題描述 蒜頭君每天都在用一款名為 蒜廠瀏覽器 的軟體。在這個瀏覽器中,一共三種操作 開啟頁面 回退和前進。它們的功能如下 開啟頁面 在位址列中輸入 並跳轉到 對應的頁面 回退 返回到上一次訪問的頁面 前進 返回到上次回退前的頁面,如果上一次操作是開啟頁面,那麼將無法前進。現在,蒜頭君開啟瀏覽器,進...
過擬合問題,怎麼樣解決
過擬合有兩種原因 訓練集和測試集特徵分布不一致 白天鵝黑天鵝 或者模型太過複雜 記住了每道題 而樣本量不足 解決過擬合也從這兩方面下手,收集多樣化的樣本,簡化模型,交叉檢驗。cross validation,交叉比對 交叉驗證 來來回回用不同的測試物件和訓練物件做交叉比對。這樣學到規律就不會過擬合啦...