cccc練習題連續因子和N個數求和

2021-08-15 02:49:26 字數 1602 閱讀 4381

本來我想的就是把所有因子列出來然後找第乙個連續最長的,但是坑還不少。

1.資料12 2*3*4比12大,只能取2*3.

2. 我本來想優化,跳過連續的乙個串,但是這樣就跳過了其中的子串,而子串是可能的解。

3. 想優化只看開方以前的因子,事實證明別瞎優化。

4. 想暴力列舉所有因子,丫的超時。

5. 對於沒有其他因子的素數要特判。

6. 匹配連續的乙個終結條件是已經沒其他因子了。

都是淚,我瞎暴力列舉乙個不好嗎。。。

**:

#include #include #include using namespace std;

typedef long long ll;

int main()

, k = 0;

int len = 0, p;

cin >> n;

for(ll i = 2; i * i<= n; i++)

}sort(yz, k + yz);

// for(int i = 0; i < k; i++)

// cout << yz[i] << ' ';

// cout << endl;

for(int i = 0; i < k; i++)

if(flag)

break;}}

}if(!len)

cout << len << endl;

for(int i = p; i < p + len; i++)

return 0;

}

這題一開始爆空間了。

我就直接想求和來著,但是對於資料:5

2147483647/2147483645 2147483644/2146666666 214444/2147483647 21444433/2147483643 2122222221/21474854

必須讀乙個處理乙個。

而且是a*b/c而不是a/c*b,神他媽的右結合,害我老不過。

另外還有結果為0什麼的。

#include #include struct fen;

fen date[105];

long long gdb(long long a, long long b)

return a;

}int main()

if(fenzi == 0)

long long m = fenzi < 0?-fenzi:fenzi;

long long temp = gdb(m, fenmu);

fenzi = fenzi / temp;

fenmu = fenmu / temp;

long long zheng = fenzi / fenmu;

fenzi %= fenmu;

if(fenzi == 0)else if(zheng != 0)else

return 0;}/*

52147483647/2147483645 2147483644/2146666666 214444/2147483647 21444433/2147483643 2122222221/21474854

*/

練習題 25 找出N個數之和等於M

題目 給定乙個target,和乙個 有序 陣列ra。要求 從ra中挑選length2個數,使得它們之和等於target 說明 length2個數中可以出現重複 例子 如 a b c 31,a b c都來自於 1,3,5,7,9,11,13,15 則 include include includeus...

CCCC團體天梯賽練習題 排座位

時間限制 150 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 布置宴席最微妙的事情,就是給前來參宴的各位賓客安排座位。無論如何,總不能把兩個死對頭排到同一張宴會桌旁!這個艱鉅任務現在就交給你,對任何一對客人,請編寫程式告訴主人他們是否能被安排同...

天梯賽 練習題 L1 009 N個數求和

l1 009 n個數求和 20 分 本題的要求很簡單,就是求n個數字的和。麻煩的是,這些數字是以有理數分子 分母的形式給出的,你輸出的和也必須是有理數的形式。輸入第一行給出乙個正整數n 100 隨後一行按格式a1 b1 a2 b2 給出n個有理數。題目保證所有分子和分母都在長整型範圍內。另外,負數的...