口算訓練(分解質因子 小思路)

2021-10-05 03:22:12 字數 1053 閱讀 3500

yes題意就是給你乙個陣列,然後有m次詢問,問你從l到r區間內的所有數的乘積能不能整除d。

這道題呢,比賽的時候是想到了分解質因子,但是當時沒有想到怎麼比較[l,r]一段區間的質因子和d的質因子。最後看了題解才恍然大悟,用vector來儲存下標,然後二分找一段區間的某個質因子的數量。感覺確實很巧妙。

#include

#include

#include

#include

#include

#include

#include

using

namespace std;

#define ll long long

const

int n=

1e5+10;

vector<

int>v[n]

;int n,m;

intsolve

(int l,

int r,

int d)

if(num)}}

if(d>1)

}return1;

}int

main()

scanf

("%d%d"

,&n,

&m);

int x;

for(

int i=

1; i<=n; i++)}

if(x>1)

}while

(m--

)else}}

return0;

}

質分解因數 質因子分解

3 參考 分解因數 時間限制 1000 ms 記憶體限制 32768 kb 長度限制 100 kb 判斷程式 standard 來自 小小 題目描述 所謂因子分解,就是把給定的正整數a,分解成若干個素數的乘積,即 a a1 a2 a3 an,並且 1 a1 a2 a3 an。其中a1 a2 an均為...

質因子分解

今天沒事做,我們來寫個部落格,混混等級!我們以求數的質因子的個數為例來講解。對於質因子分解最簡單最純粹的暴力我相信大家都會的。int getnum int x return ans 但是當處理的資料比較多,而且範圍也比較大的時候顯然這種方式就不再那麼適合了。既然我們是分解質因子,那麼我們就可以先預處...

質因子分解

這個東西會在程式執行結尾提示 press any key to continue 用以結束程式。貴在那裡?讓我們來看看system pause 的流程 1 暫停你的程式 2 在sub process中啟動os 3 尋找要執行的命令並為之分配記憶體 4 等待輸入 5 記憶體 6 結束os 7 繼續你的...