š¤2023-08-12 02:49
___BELOW_IS_LESS_INTERESTING___
ę½č±”åćåæ
ćććåć§ćŖććØććčćę¹ćÆćå
·ä½ēćŖćć®ćęćåŗćććć®ćććÆććå¤ę§ćŖćć®ćé£ę³ć§ććē¶ę
ćäæć¤ććØć®éč¦ę§ć示ćć¦ćć¾ćććććÆćčØčć®é£ę³ēęå³ć§ć¤ćŖććććØććć¢ć³ć±ć¼ćčŖæę»ććć®KJę³ćé£ććēē±ćØćé¢é£ćć¦ćć¾ććć¾ćććéć”ć¦ę¹ćććććććéć”ćØććććØćććč«čŖćććć®å¼ēØćÆćéć”ćēÆćććØčŖä½ćÆäŗŗéć®ę§č³Ŗć§ćććéæććććŖććććć®éć”ćčŖčćććććę¹ććŖćććØćēć®éć”ć§ćććØććęćć示ćć¦ćć¾ćććććÆćē ē©¶ććć¶ć¤ć³ć®ććć»ć¹ć«ććć¦ćéč¦ćŖęčØć§ćććØęćć¾ćć
åē· å½¹ć社å
å
¬åćććØććčćę¹ćÆćåē· å½¹ćØććå½¹č·ćéåøøćēµå¶ć¹ćć«ć®å°éå®¶ć社å
ē§©åŗć«ćććé·čćØćć¦ć®å½¹å²ćęćććććµć¤ćć¦ćŗć®å
¬ååē· å½¹ćÆććć§ćÆćŖććØććęęćććć¾ććåē· å½¹ćå¢ććććØć«ććęęę±ŗå®ć®é
ćććć¤ć¢ć¹ćęøåæµććć¾ććććµć¤ćć¦ćŗć®ććć£ć¦ćæć¦åé”ćęććć«ćŖćć°ććććććććØććęåćććä½ćåé”ćććć°ćććć°ćććØčćććć¦ćć¾ćććććÆććććčŖä½ćę軽ć«ćććÆć¢ćććććØććęę”ćØé¢é£ćććććć§ćć大å¹
ćŖę§ęå¤ę“ćććććććććęććØććć·ćć„ćØć¼ć·ć§ć³ćć«ćć¼ććććć«ććććčŖä½ćę軽ć«č¤č£½ćć¦ćććÆć¢ććć§ćććØčÆććØććęę”ćććć¾ćććććÆćē“ć§ä½ę„ććć¦ććęć«ćÆę¬č³Ŗēć«äøåÆč½ć ć£ćććØć ććććøćæć«åć«ććåÆč½ć«ćŖć£ćććććÆć¢ćććÆå¤ę“ććęęćē·©åććå¹ęććććØčćććć¾ćć
åčå¼±ę§ć«ć¤ćć¦ć®čćę¹ćÆćććåéć§å®å
Øēćåć(=č² ć®ćć©ććÆć¹ćÆć³ć«åƾćć¦é å„)ćå„ć®åéć§éå®ēćŖć¹ćÆćććććåćććØć§ć大åć”ćć大ććŖå©ēćå¾ć(=ę£ć®ćć©ććÆć¹ćÆć³ćę®ć)ćØćććć®ć§ććććć«ćć£ć¦åčććå®ē¾ćććØććć¦ćć¾ććć¾ćććæć¬ććÆćåčććØćÆćŖćć·ć§ć³ćęć¤ććØć ćØčæ°ć¹ć¦ćć¾ććććŖćć·ć§ć³ćØćÆē§ćć”ćåčććć¦ććććć®ć ććŖćć·ć§ć³ćććć°ćäøē¢ŗå®ę§ć®č² ć®å“é¢ććę·±å»ćŖå®³ćććććććØćŖććäøē¢ŗå®ę§ć®ę£ć®å“é¢ććå©ēćå¾ćććØćć§ććć®ć ććØććčćę¹ćÆććŖć¹ćÆē®”ēć«ććć¦éč¦ćŖč¦ē¹ćØćŖćć¾ćć
č±ē·=é£ę³=ę°ēµåēŗč¦ćØććčćę¹ćÆćę°ććŖč¦ē¹ćć¢ć¤ćć¢ćēćæåŗćććć®éč¦ćŖććć»ć¹ćØčćććć¾ćććććÆćęčć®čŖē±åŗ¦ćé«ććę°ććŖč¦ē¹ćć¢ć¤ćć¢ćēćæåŗćććć®éč¦ćŖććć»ć¹ćØčćććć¾ćć
KJę³ć®č”Øęććć¤å¤ę“ććć®ć(ä½ęććć»ć¹)ć«ć¤ćć¦ćÆćäŗęććŖćć£ććę°ćććć®ććēć¾ććććććÆćÆćÆćÆććććØććčćę¹ć示ććć¦ćć¾ćććććÆćę°ććŖč¦ē¹ćć¢ć¤ćć¢ćēćæåŗćććć®éč¦ćŖććć»ć¹ćØčćććć¾ćć
SECIć¢ćć«ćØPDCAćµć¤ćÆć«ć«ć¤ćć¦ćÆćSECIć¢ćć«ćØPDCAćµć¤ćÆć«ć®é¢äæć«čØåććć¦ćć¾ććPDCAć®åć«S(
å
±åå )ćåæ
č¦ćØćć主張
S-PDCA ćććć¦ćć¾ćććććÆćPlanćØćÆćčØčŖåććć¦ćŖćęé»ē„ćå½¢å¼åćććććēµåćć¦ä½ććććć®ćŖć®ć§ćäŗåć«å
±ååćć¦ęé»ē„ćå
±ęćć¦ććŖććØć
ē“å¾ęć®ćŖćčØē» ćć«ćŖć£ć¦ćć¾ććØććčćę¹ć示ćć¦ćć¾ćć
ć®ć ććēøåƾć»ć°ć”ć³ćęØć ćčŖä½ć³ć¼ćć®ę“ēćć¾ć ć ć£ćā¦
ę®ć10åć ć£ćć®ć§ē¦ć£ć¦ćć¾ć£ć
å¤ćå¤åććē¹ćäŗåę¢ē“¢ćØććęććć
ć ććPythonć®bisectćÆć½ć¼ćęøćæé
åćč¦ę±ćć
ćć®åé”ę”ä»¶ć ćØé
åćøć®ęæå
„ćēŗēćć¦O(N)ć«ćŖćććčÆććŖćć
ę¬č³Ŗēć«ćÆPythonć§ä½æćć平蔔äŗåęØćććåćåŗćć¦ä½æććććć«ęŗåććØćć¹ććŖć®ććŖć¼
ä»åć®åé”ć«éćć°ćå
é 仄å¤ćøć®čæ½å ćÆåæ
č¦ćŖććć®ć§ćéé ć§ęć¦ć°ę«å°¾čæ½å ć§O(1)ć«ćŖćććććŖććć¼ć ććŖć
éé ć§ęć£ć¦äŗåę¢ē“¢ćććć¼ćøć§ć³
python def main():
from bisect import bisect_left
N, Q = map(int, input().split())
ret = (N - 2) ** 2
xs = [-N]
xvals = [N - 2]
ys = [-N]
yvals = [N - 2]
for _q in range(Q):
q, x = map(int, input().split())
if q == 1:
i = bisect_left(xs, -x)
ret -= xvals[i - 1]
if i == len(xs) and yvals[-1] > x - 2:
ys.append(-xvals[i - 1] - 2)
yvals.append(x - 2)
else:
y = x
i = bisect_left(ys, -y)
ret -= yvals[i - 1]
if i == len(ys) and xvals[-1] > y - 2:
xs.append(-yvals[i - 1] - 2)
xvals.append(y - 2)
print(ret)
ē¹åå¾ć ććé
å»¶ć»ć°ć”ć³ćęØććÆćŖć
å対ć»ć°ć”ć³ćęØ ć§ååćŖć®ć ććé
å»¶ć»ć°ć”ć³ćęØć使ć£ć¦č§£ćć¦ćäŗŗćććććććććććć§ććć£ćć®ćććŖć
### ä¾é ¼ćå
å»¶ć°ćć«ććēä¾
äøčØć®ćå£å®ććå£å®ć ćØęćēē±ćÆćčŖåć§ćć£ććéęć§ććč¦č¾¼ćæććććŖćććććŖćć§å
å»¶ć°ćć«ććććØććē¾č±”ćÆēŗēććŖćć ććććć ć
ćęéćŖć½ć¼ć¹ćč¶³ććŖćććććć°ćć°ćå¾ććććć®ć®ęå¾
å¤ćä½ćć®ć§ćęéćŖć½ć¼ć¹ćåŖå
ēć«å²ćå½ć¦ćęęę±ŗå®ćć§ććŖćććØććććØćć
ęéććŖć ććØććēŗčØć観測ćććęć®ćććć
extra info
json size: 40673012
pickle size: 735437681
previous notes size: 1314
Tweet