Luogu4403 秦騰與教學評估 二分

2022-04-28 20:00:08 字數 1141 閱讀 1715

$luogu$

$description$

有$n$個數列,求乙個$x$,$x$在各個數列中的出現次數之和為奇數.這樣的$x$最多存在$1$個.若不存在則輸出poor qin teng:(

$sol$

這樣的$x$最多存在乙個說明什麼呢?

我們知道奇數+偶數=偶數,偶數+偶數=偶數,所以從$x$開始往後的數,它們的字首和都為奇數,$x$以前的數它們的字首和都是偶數,發現了$x$的單調性!然後二分.

$over$

$code$

#include#define il inline

#define rg register

#define go(i,a,b) for(rg int i=a;i<=b;++i)

#define yes(i,a,b) for(rg int i=a;i>=b;--i)

#define mem(a,b) memset(a,b,sizeof(a))

#define int long long

#define db double

using

namespace

std;

il int

read()

while(c>='

0'&&c<='9')

return x*y;

}int

t,n,r;

struct nodea[200010

];il

int calc(int

x)il

intsol()

returnas;

}main()

,r=max(r,a[i].e);

if(calc(r)%2==0)

rg int qwq=sol(),as=0

; go(i,

1,n)

//printf("%d %d\n",qwq,as);

printf("

%d %d\n

",qwq,calc(qwq)-calc(qwq-1

)); }

return0;

}

view code

AcWing 秦騰與教學評估

第一次在乙個oj上發了篇題解,沒想到他們沒有題解審核機制,直接就出現在題解區了.那裡的markdown在這裡無效,我調了一下再發到這裡儲存一下.二分 時間複雜度 o nlogn 藍書而來.本題重點在於滿足條件的位置只會不存在或者有且僅有乙個,而這個點有乙個特殊性質 人數是奇數.設想 在連續的一段位置...

bzoj1271 秦騰與教學評估

有n個檢查小組,在乙個 0 2 31 1 的區間中檢查,每個小組的分布情況我們這樣描述 s代表起點,e代表終點,d代表從起點開始每隔d個位置安排乙個人到終點結束。詢問整個區間中有沒有乙個位置為奇數個人。有輸出這個位置和位置上的人數,否則輸出 poor qin teng 很機智的方法,用字首和表示奇偶...

BJWC2008 秦騰與教學評估

傳送門 這道題是一道二分答案題 我估計很難看出這是二分答案 題目要求求出序列中老師為奇數的是哪乙個點。這道題它十分神奇,我們往往都會糾結在如何存下這麼多的點,如何處理老師的站位。但是這些並不是解題的關鍵,我們要注意乙個重點,就是序列中最多只有乙個位置有奇數個老師,這樣的話,我們能知道,包含這個位置的...