牛客演算法周周練6 C Game C

2021-10-06 05:02:03 字數 646 閱讀 9419

時間限制:c/c++ 1秒,其他語言2秒

空間限制:c/c++ 131072k,其他語言262144k

64bit io format: %lld

第一行:乙個整數n。

資料滿足:1≤n≤95718

共一行:乙個字串,表示最後誰(johnson或者nancy)無法進行操作。
示例1

johnson

因為每一次操作都會使集合中多出乙個數,且每次操作後會產生質因數,因為質因數是無法繼續分解成兩個因數。

其實只需要看結果即可,如果集合中的質因數的個數是奇數(當n=1為例外),就說明是nancy無法再操作了;如果集合中的質因數的個數是偶數,就說明是johnson無法再操作了。

#include #include #include #include #include #include using namespace std;

int main()

for(int i=2;i<=n;i++) //分解以得到質因數的個數 }

if(ans%2==0)

cout<<"johnson"

cout<<"nancy"

}

牛客演算法周周練6 game

每次操作可以將集合中的乙個數字分解為它的任意兩個非1的因數,集合中的數字個數 1。因為 質因數 是無法再被分解的,所以最後集合中的數全為 n 的質因數。因此只需要看題目給定的 n 有多少個質因數。假設 n 有 p 個質因數,那麼這場遊戲將進行 p 1 次操作 每次操作後集合中的數字個數 1 如果 p...

牛客演算法周周練6 青蛙過河

其實這就是一道數學規律題,我們不難發現。當只有荷葉的時候,我們最多只能由 m 1 個青蛙可以過河 m 個青蛙先分別排類在荷葉上,然後再最後乙個青蛙跳到目標石墩。當存在乙個石墩時,我們可以先讓 m 1 個青蛙跳到上面,去,然後我們還能再荷葉上放 m 個青蛙,最後在目標點上能放乙隻青蛙,這裡就得到 m ...

牛客演算法周周練2

a 題意 求乙個數的順序和逆序之和。題解 其實就是個閹割版的高精度加法嘛。其實逆序數忽略前導零這個條件是沒有用的,因為順序數不可能有前導零,自然結果也不會有,然後注意下首位進製不取餘。include using namespace std int a 10 b 10 intmain for k j ...