總結:
t1需要拿全分;
t2棄療;
t3也應該拿全分;
t4應該做出70%的資料;
ans的初始值一定要設大;
思路:k=10時,0的個數就是n!中min(2的數量,5的數量);
對n!質因數分解;
n!的質因數分解詳見:
一樣的思路;
對k進行質因數分解,
假設k的某一質因數為s,在k中有num個,在n中有cnt個;
則ans=min(ans,cnt/num);
由於n,k很大,所以ans的初始值需要賦很大,比如17個9,
#include
#include
#include
#include
using
namespace
std;
typedef
long
long ll;
ll n,k,ans=9999999999999999;
ll calc(ll a,ll b)
void solve()
if(k>1) ans=min(ans,calc(n,k));
printf("%lld\n",ans);
}return;
}int main()
數論 NOIP模擬賽 無聊的計算
在這道題中首先可以發現因為是在mod意義下的乘方,那麼可以看做是mod p之後的a數列進行乘方,那麼就將每乙個a數列中的數控制在了0 p 1 之間因為mod是乙個質數那麼ap 1modp 1 modp 那麼就可以將b數列控制在0 p 2 之間,那麼只要統計a數列中出現的每乙個次數,b出現的每乙個次數...
數論 模擬退火
題目 大佬說這題可以很好的入門模擬退火 雖然模擬退火不是這題的最佳解 但是確實可以通過這個來理解模擬退火的思想 本題求乙個平衡點,我們要找乙個點使得 ni di wi最小 di為i點到該點的距離 include include include include define rg register d...
20200920數論模擬
t1 寫了40分掛了,不知道為啥,和mx寫的一樣,對拍答案一樣,就是掛了。正解 乙個數對答案貢獻的價值,取決於他在第幾個被放進去。曾經拿競賽題去為難班主任的時候,sy教我多變數變成單變數想,先想乙個數a第x次放進a的貢獻 a times sum frac 提前感謝whh對本部落格的大力支援 由乙個數...