PTA 天梯賽練習集 L1 006 連續因子

2021-10-10 04:47:47 字數 601 閱讀 9724

乙個正整數 n 的因子中可能存在若干連續的數字。例如 630 可以分解為 3×5×6×7,其中 5、6、7 就是 3 個連續的數字。給定任一正整數 n,要求編寫程式求出最長連續因子的個數,並輸出最小的連續因子序列。

輸入在一行中給出乙個正整數 n(1首先在第 1 行輸出最長連續因子的個數;然後在第 2 行中按因子1*因子2*……*因子k的格式輸出最小的連續因子序列,其中因子按遞增順序輸出,1 不算在內。

630
3

5*6*7

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

const int max = 200009;

int n, start, endd;

int main()

// printf("\n");

if(maxx < endd - start + 1)}}

if(start != -1)

}else

}return 0;

}

PTA 天梯賽 L1 006 連續因子

這樣的模擬題應該算是第一階梯裡最難的那個了,其次就是二維字元陣列操作的題。這個題因為說了給的數的範圍是在二的三十一次方以內,所以連續因子的長度最長也不會超過12,因為12的階乘是超過這個範圍的,然後就暴力求解吧,三層迴圈列舉每種長度每種開始,找到之後就結束。否則的話就輸出1,表示最長的序列就是它本身...

PTA天梯賽L1 006 連續因子

l1 006 連續因子 乙個正整數 n 的因子中可能存在若干連續的數字。例如 630 可以分解為 3 5 6 7,其中 5 6 7 就是 3 個連續的數字。給定任一正整數 n,要求編寫程式求出最長連續因子的個數,並輸出最小的連續因子序列。輸入格式 輸入在一行中給出乙個正整數 n 1輸出格式 首先在第...

PAT 天梯賽練習集 L1 006 連續因子

acm模版 最開始看錯題了,結果想岔了,用尺取法做了,但是不是說尺取法不能做,只是沒必要用它,直接用陣列存起來所有的因子即可,當然,也可以存一部分因子,畢竟這個結果只和前部分因子以及它本身有關。這裡我用的尺取法,效率還算可以,但是系統有乙個坑,明明說時間限制為400ms,可是10毫秒多一點兒就超時了...