乙個正整數n的因子中可能存在若干連續的數字。例如630可以分解為3*5*6*7,其中5、6、7就是3個連續的數字。給定任一正整數n,要求編寫程式求出最長連續因子的個數,並輸出最小的連續因子序列。
輸入格式:
輸入在一行中給出乙個正整數n(131
)。輸出格式:
首先在第1行輸出最長連續因子的個數;然後在第2行中按「因子1*因子2*……*因子k」的格式輸出最小的連續因子序列,其中因子按遞增順序輸出,1不算在內。
輸入樣例:
630輸出樣例:
35*6*7
思路:對題意沒有理解清楚,所有除錯了一會,這個題不是說所有因子,而是能相乘等於n的因子。好比說12這個數,
正確的輸出應該是2 2*3,而不是3 2*3*4;然後還得注意極值情況,比如0輸出1 0、1輸出1 1,2輸出1 2等等。
#include#include未ac**#include
#include
#include
#include
using
namespace
std;
intmain()
if (se.find(num / i) ==se.end())}}
sort(vec.begin(), vec.end());
int cnt = 1, max = 1, maxp = 0
;
for (int i = 1; i < vec.size(); i++)
}cout
<< max <
for (int i = maxp; i < maxp + max; i++)
if (max != 0) cout <
return0;
}
#include#include方法來自:#include
#include
#include
#include
using
namespace
std;
intmain()}}
if (max == 0
) cout
<< max <
for (int i = maxp; i < max + maxp; i++)
cout
<
return0;
}
L1 006 連續因子
乙個正整數n的因子中可能存在若干連續的數字。例如630可以分解為3 5 6 7,其中5 6 7就是3個連續的數字。給定任一正整數n,要求編寫程式求出最長連續因子的個數,並輸出最小的連續因子序列。輸入格式 輸入在一行中給出乙個正整數n 131 輸出格式 首先在第1行輸出最長連續因子的個數 然後在第2行...
L1 006 連續因子
乙個正整數n的因子中可能存在若干連續的數字。例如630可以分解為3 5 6 7,其中5 6 7就是3個連續的數字。給定任一正整數n,要求編寫程式求出最長連續因子的個數,並輸出最小的連續因子序列。輸入格式 輸入在一行中給出乙個正整數n 131 輸出格式 首先在第1行輸出最長連續因子的個數 然後在第2行...
L1 006 連續因子
時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 乙個正整數n的因子中可能存在若干連續的數字。例如630可以分解為3 5 6 7,其中5 6 7就是3個連續的數字。給定任一正整數n,要求編寫程式求出最長連續因子的個數,並輸出最小的連...