b617: 蠟燭 (candles)
Tags :
Accepted rate : 0人/0人 (0%) [非即時]
評分方式:
Tolerant

最近更新 : 2026-02-08 12:20

Content

小 U 有 n 支蠟燭,每支蠟燭都只有兩種狀態:亮着或熄滅。一開始,所有蠟燭被排成一列,它們都是亮着的。
小 U 將對它們進行 m 次操作,對於第 i 次操作:
• 小 U 會選擇三個正整數 op[i],l[i],r[i]
• 若 op[i]=1,則他會把第 l[i],l[i]+1,l[i]+2,…,r[i] 支蠟燭點燃。
• 若 op[i]=2,則他會把第 l[i],l[i]+1,l[i]+2,…,r[i] 支蠟燭熄滅。
• 若 op[i]=3,則他會把第 l[i],l[i]+1,l[i]+2,…,r[i] 支蠟燭變為與原來相反的狀態。其中,把蠟燭變為與原來相反的狀態是指:若蠟燭是亮着的,則把它熄滅;否則,把它點燃。
• 若 op[i]=4,則他會把第 l[i],l[i]+1,l[i]+2,…,r[i] 支蠟燭抽出來,然後按照 r[i],r[i]-1,r[i]-2,…,l[i] 的順序重新放回去。
現在小 U 想考考你,你需要回答 m 次操作後有多少支蠟燭是亮着的。
不久後小 U 覺得這個問題太簡單了,於是他要求你回答他每次操作後有多少支蠟燭是亮着的。

Input

你需要在標準輸入 (stdin) 讀入數據。
輸入的第一行包含兩個正整數 n,m,以空格分隔。
接下來 m 行,第 i 行表示第 i 次操作:
• 包含三個正整數 op[i],l[i],r[i],以空格分隔。

Output

你需要在標準輸出 (stdout) 輸出答案。
輸出 m 行,第 i 行包含一個整數,表示第 i 次操作後有多少支蠟燭是亮着的。

Sample Input #1
5 3
2 1 2
3 2 4
1 2 3
Sample Output #1
3
2
3
測資資訊:
記憶體限制: 512 MB
公開 測資點#0 (5%): 1.0s , <1K
公開 測資點#1 (5%): 1.0s , <1K
公開 測資點#2 (5%): 1.0s , <1K
公開 測資點#3 (5%): 1.0s , <1K
公開 測資點#4 (5%): 1.0s , <1K
公開 測資點#5 (5%): 1.0s , <1K
公開 測資點#6 (5%): 1.0s , <1K
公開 測資點#7 (5%): 1.0s , <1K
公開 測資點#8 (5%): 1.0s , <1K
公開 測資點#9 (5%): 1.0s , <1K
公開 測資點#10 (5%): 1.0s , <1M
公開 測資點#11 (5%): 1.0s , <1M
公開 測資點#12 (5%): 1.0s , <1M
公開 測資點#13 (5%): 1.0s , <1M
公開 測資點#14 (5%): 1.0s , <1M
公開 測資點#15 (5%): 1.0s , <1M
公開 測資點#16 (5%): 1.0s , <1M
公開 測資點#17 (5%): 1.0s , <1M
公開 測資點#18 (5%): 1.0s , <1M
公開 測資點#19 (5%): 1.0s , <1M
Hint :

【數據範圍】
對於所有測試數據,保證:
• n≤8000
• m≤8000
• 對於所有滿足 1≤i≤m 的整數 iop[i]≤4, l[i]≤r[i]≤n

Tags:
出處:
[管理者:
ricky (電腦黃)
]


ID User Problem Subject Hit Post Date
沒有發現任何「解題報告」