藍橋杯 試題 基礎練習 分解質因數

2021-10-04 12:05:56 字數 440 閱讀 6115

題意:  求出區間[a,b]中所有整數的質因數分解。

思路:我們可以先求出從2到b之間所有的素數,把這些素數插入陣列,然後每次從頭遍歷這個素數陣列,如果當前的數能整除素數,那麼跟新新的當前的值,及除以素數,然後從頭開始重新遍歷素數陣列。如果不能整除當前陣列,那麼就++,嘗試下乙個素數!

#include

using

namespace std;

vector<

int> p;

boolls(

int m)

}return

true;}

intmain()

}int res;

for(

int i=n;i<=m;i++

)else j++;}

cout<}return0;

}

藍橋杯 試題 基礎練習 分解質因數

問題描述 求出區間 a,b 中所有整數的質因數分解。輸入格式 輸入兩個整數a,b。輸出格式 每行輸出乙個數的分解,形如k a1 a2 a3.a1 a2 a3.k也是從小到大的 具體可看樣例 樣例輸入 3 10 樣例輸出 3 34 2 2 5 56 2 3 7 78 2 2 2 9 3 3 10 2 ...

藍橋杯 試題 基礎練習 分解質因數

資源限制 時間限制 1.0s 記憶體限制 512.0mb 問題描述 求出區間 a,b 中所有整數的質因數分解。輸入格式 輸入兩個整數a,b。輸出格式 每行輸出乙個數的分解,形如k a1 a2 a3.a1 a2 a3.k也是從小到大的 具體可看樣例 樣例輸入310 樣例輸出3 34 2 25 56 2...

藍橋杯 基礎練習 分解質因數

首先先篩選出素數陣列,不用太大也不要太小,我這裡選了10000過了 然後用乙個while迴圈逐級判斷,不能直接輸出,把結果放在乙個陣列裡最後將得出的結果排序最後再輸出即可 本題發現乙個問題,memset函式在給陣列賦值時,如果不是賦0那麼在陣列範圍很大時比如10000時可能就會出問題,本題出了一次很...