Submission #24412768


Source Code Expand

class ST
	def initialize a
		@l = (1<<(a.size-1).bit_length)-1
		@h = [a[-1]]*@l+a
		((@l+a.size-2)/2).downto(0){|i|
			@h[i] = @h[i+i+1,2].min
		}
		@h<<a[-1]
	end

	def [] l,r
		lm,rm = @h[l+=@l],@h[r+=@l]
		l,r,lm,rm = l/2,r/2-1,[@h[l],lm].min,[@h[r],rm].min until r<l
		return [lm,rm].min
	end
	def is l,r
		is,i0,w,m = [0],0,@l+1,self[l,r]
		until w<2 || is.empty?
			i0 += (@l+1)/w
			w /= 2
			is = is.inject([]){|a,i|
				a<<i if m==@h[i0+i+=i]
				a<<i if m==@h[i0+i+=1]
				next a
			}
			is.shift while is[0] && is[0]*w+w<=l
			is.pop while is[-1] && r<is[-1]*w
		end
		return is
	end

	def []= i,v
		i += @l
		@h[i] = v
		@h[i] = @h[i+i+1,2].min while 0<=i=(i-1)/2
		return v
	end
end

N,Q = gets.split.map(&:to_i)
A = 10**9,*gets.split.map(&:to_i)
M = ST.new A

Q.times{
	t,x,y = gets.split.map(&:to_i)
	if t<2
		M[x] = A[x] = y if A[x]!=y
	else
		is = M.is x,y
		print is.size,' ',is*' ',"\n"
	end
}

Submission Info

Submission Time
Task L - Multiple Min Query
User ds14050
Language Ruby (2.7.1)
Score 0
Code Size 966 Byte
Status WA
Exec Time 1676 ms
Memory 57136 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 6
Status
AC × 1
AC × 10
WA × 33
Set Name Test Cases
Sample example0.txt
All 000.txt, 001.txt, 002.txt, 003.txt, 004.txt, 005.txt, 006.txt, 007.txt, 008.txt, 009.txt, 010.txt, 011.txt, 012.txt, 013.txt, 014.txt, 015.txt, 016.txt, 017.txt, 018.txt, 019.txt, 020.txt, 021.txt, 022.txt, 023.txt, 024.txt, 025.txt, 026.txt, 027.txt, 028.txt, 029.txt, 030.txt, 031.txt, 032.txt, 033.txt, 034.txt, 035.txt, 036.txt, 037.txt, 038.txt, 039.txt, 040.txt, 041.txt, example0.txt
Case Name Status Exec Time Memory
000.txt WA 227 ms 14164 KiB
001.txt WA 220 ms 14252 KiB
002.txt WA 752 ms 14116 KiB
003.txt WA 748 ms 14224 KiB
004.txt WA 696 ms 14172 KiB
005.txt WA 700 ms 14108 KiB
006.txt WA 674 ms 14100 KiB
007.txt WA 674 ms 14160 KiB
008.txt AC 161 ms 16072 KiB
009.txt AC 160 ms 15920 KiB
010.txt WA 342 ms 15944 KiB
011.txt WA 340 ms 16156 KiB
012.txt WA 603 ms 15792 KiB
013.txt WA 580 ms 15704 KiB
014.txt WA 859 ms 15448 KiB
015.txt WA 819 ms 15444 KiB
016.txt AC 218 ms 40624 KiB
017.txt AC 238 ms 41388 KiB
018.txt AC 368 ms 52828 KiB
019.txt AC 369 ms 52824 KiB
020.txt WA 427 ms 56892 KiB
021.txt WA 425 ms 57136 KiB
022.txt WA 934 ms 37100 KiB
023.txt WA 1202 ms 37340 KiB
024.txt WA 1063 ms 15608 KiB
025.txt WA 1064 ms 15480 KiB
026.txt WA 1065 ms 15380 KiB
027.txt WA 1443 ms 36444 KiB
028.txt WA 1456 ms 36616 KiB
029.txt WA 1273 ms 36552 KiB
030.txt WA 1174 ms 15524 KiB
031.txt WA 1174 ms 15492 KiB
032.txt WA 1188 ms 15536 KiB
033.txt WA 1381 ms 36484 KiB
034.txt WA 1409 ms 36548 KiB
035.txt WA 1676 ms 36552 KiB
036.txt WA 687 ms 20532 KiB
037.txt WA 701 ms 20768 KiB
038.txt AC 707 ms 21800 KiB
039.txt AC 849 ms 41580 KiB
040.txt WA 829 ms 40112 KiB
041.txt AC 855 ms 41728 KiB
example0.txt AC 57 ms 14384 KiB