poj 2100 尺取法(尺度法)

2022-03-16 21:24:32 字數 710 閱讀 9644

給你乙個數n,然後找到乙個連續的序列,使得這個序列中的數的平方和等於n

輸出需要注意的是第一行為解的個數,剩下的每行先輸出序列的長度,然後輸出序列。按照序列的長度進行降序輸出。

沒啥好說的,使用尺度法,進行列舉各個區間上的數。

需要注意的是數字1的答案為:

1

1 1

#include#include#include#include#include#include#include#include#includetypedef long long ll;

using namespace std;

const double esp=1e-6;

const int inf=0x3f3f3f3f;

const int maxn=1e6+7;

ll n;

struct node

};node nod[maxn];

int main()

if(sum < n) break;

if(sum==n)

sum-=lt*lt;

lt++;

}// sort(nod, nod+cnt);

cout

}

POJ 2100(尺取法 巢狀pair)

題意 結界給出乙個數n。你要求一段連續的數,這些數的平方和等於n。input 輸入乙個整數n,1 n 10 14 output 輸出乙個數k,k為解的個數。接下來的k行為解,每一行的解要先輸出這個解中包含的數字個數,然後從小到大輸出解中包含的數字。解的輸出順序要按照所包含的數字個數降序排列。samp...

poj 2100 尺取法連續平方和

題意 給乙個數 n 1e14 求一段連續的數的數字,使得其平方和等於n。輸出的時候,先輸出有多少組,然後每組的開頭輸出有多少個元素,然後輸出這些元素。解析 尺取法。需要注意的地方是s和t要從1開始,否則wa。include include include include include includ...

尺取法還是蚯蚓法

尺取法,顧名思義,像尺子一樣,一塊一塊的擷取。是不是感覺從字面很難理解?我們直接看例題 poj 3061 題目翻譯 給定長度為n的數列整數a0,a1,a2,a3 an 1以及整數s。求出綜合不小於s的連續子串行的長度的最小值。如果解不存在,則輸出0。限制條件 10 n 10 5,s 10 8,a 1...