小p在課堂上課,老師留給他乙個簡單的問題:
有 nn
條木棍,第 i
i 條木棍的長度是 a_ia
i。總共有 q
q 次詢問,每次詢問給定 l
l 和 r
r ,問從[l, r][l
,r] 這個區間裡的木棍中,能不能選出 4
4 根木棍組成乙個長方形.
現在快要下課了,小p想盡快解決這個問題,希望你可以幫助他
自己敲得**總是錯。。。只好看大佬的**,然後自己加上離散化的部分
#include using namespace std;
#define ll long long
#define pii pair#define mp make_pair
#define ls i << 1
#define rs ls | 1
#define md (ll + rr >> 1)
#define lson ll, md, ls
#define rson md + 1, rr, rs
#define mod 1000000007
#define pi acos(-1.0)
#define eps 1e-8
#define n 200020
#define m 10000020
int cnt[m], a[n], ans[n];
int b[n];
int n, q;
int main()
sort(b+1,b+1+n);
int l = 0, r = 1, cnt2 = 0, cnt4 = 0;
for(l = 1; l <= n; ++l)
if(cnt2 >= 2 || cnt4 >= 1) ans[l] = r - 1;
else ans[l] = n + 1;
cnt[ll]--;
if(cnt[ll] == 1) cnt2--;
if(cnt[ll] == 3) cnt4--;
} while(q--)
}}
校選拔賽F題
給n個二維點,求兩座標差值為相反數的點對數 include using namespace std typedef unsigned long long ull int ans 0 輸出答案 mapca 定義對映,first是點差值,second是這個點差有多少個點 int main map ite...
校選拔賽H題
給出毛毯一部分,可以在平面內無限延伸 問對給乙個 是否能與毛毯匹配 include using namespace std char mp1 53 53 mp 103 803 毛毯,int n,m,k 毛毯行,列,數 int check int x,int y,int w,int h 上面的匹配是自...
2010校選拔賽題目H
h include include double hanshu int n,int m int main double hanshu int n,int m 下面是正確的。資料型別問題。vc 環境下 double的取值範圍遠大於long int。int 位元組4 數值範圍 2147483648 21...