Submission #14702766
Source Code Expand
class ST
def initialize a
@l = (1<<(a.size-1).bit_length)-1
@h = [nil]*@l + a
@h << a[-1] if a.size&1==1
(@l-1).downto(0){|i|
j = 2*i+1
next unless @h[j]
@h[i] = @h[j]|(@h[j+1]||0)
}
end
def [] l,r=l
x,l,r = 0,l+@l,r+@l
x,l,r = x|@h[l]|@h[r],l/2,r/2-1 while l<=r
return x
end
def []= i,x
i += @l
@h[i] = x
while 0<i
i = (i-1)/2
j = 2*i+1
@h[i] = @h[j]|@h[j+1]
end
end
end
gets
bs = ST.new [0]+gets.chomp.bytes.map{|c| 1<<(c-?a.ord) }
gets.to_i.times{
c,d,e = gets.split
case c
when ?1
bs[d.to_i] = 1<<e.ord-?a.ord
when ?2
p 26.times.inject([0,bs[d.to_i,e.to_i]]){|(n,b),| next n+(b&1),b>>1 }[0]
end
}
Submission Info
| Submission Time | |
|---|---|
| Task | E - Simple String Queries |
| User | ds14050 |
| Language | Ruby (2.7.1) |
| Score | 0 |
| Code Size | 703 Byte |
| Status | RE |
| Exec Time | 336 ms |
| Memory | 38968 KiB |
Judge Result
| Set Name | Sample | All | ||||||
|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 0 / 500 | ||||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00-sample-00 |
| All | 00-sample-00, 01-handmade-00, 01-handmade-01, 01-handmade-02, 01-handmade-03, 01-handmade-04, 01-handmade-05, 01-handmade-06, 01-handmade-07, 01-handmade-08, 01-handmade-09, 01-handmade-10, 01-handmade-11, 02-small-00, 02-small-01, 02-small-02, 02-small-03, 02-small-04, 02-small-05, 02-small-06, 02-small-07, 02-small-08, 02-small-09, 02-small-10, 02-small-11, 02-small-12, 02-small-13, 02-small-14, 02-small-15, 02-small-16, 02-small-17, 02-small-18, 02-small-19, 03-large-00, 03-large-01, 03-large-02, 03-large-03, 03-large-04, 03-large-05, 03-large-06, 03-large-07, 03-large-08, 03-large-09 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00-sample-00 | AC | 60 ms | 14208 KiB |
| 01-handmade-00 | RE | 170 ms | 38592 KiB |
| 01-handmade-01 | AC | 65 ms | 14252 KiB |
| 01-handmade-02 | RE | 170 ms | 38596 KiB |
| 01-handmade-03 | AC | 336 ms | 38948 KiB |
| 01-handmade-04 | AC | 335 ms | 38628 KiB |
| 01-handmade-05 | RE | 182 ms | 38732 KiB |
| 01-handmade-06 | RE | 174 ms | 38712 KiB |
| 01-handmade-07 | RE | 174 ms | 38560 KiB |
| 01-handmade-08 | RE | 312 ms | 38780 KiB |
| 01-handmade-09 | AC | 333 ms | 38780 KiB |
| 01-handmade-10 | AC | 335 ms | 38864 KiB |
| 01-handmade-11 | AC | 333 ms | 38768 KiB |
| 02-small-00 | RE | 64 ms | 14272 KiB |
| 02-small-01 | RE | 62 ms | 14236 KiB |
| 02-small-02 | RE | 62 ms | 14252 KiB |
| 02-small-03 | RE | 62 ms | 14232 KiB |
| 02-small-04 | RE | 63 ms | 14108 KiB |
| 02-small-05 | RE | 61 ms | 14256 KiB |
| 02-small-06 | RE | 61 ms | 14328 KiB |
| 02-small-07 | RE | 64 ms | 14180 KiB |
| 02-small-08 | RE | 61 ms | 14244 KiB |
| 02-small-09 | RE | 60 ms | 14156 KiB |
| 02-small-10 | RE | 62 ms | 14260 KiB |
| 02-small-11 | RE | 61 ms | 14200 KiB |
| 02-small-12 | RE | 64 ms | 14120 KiB |
| 02-small-13 | RE | 61 ms | 14272 KiB |
| 02-small-14 | AC | 129 ms | 14252 KiB |
| 02-small-15 | RE | 65 ms | 14092 KiB |
| 02-small-16 | RE | 63 ms | 14112 KiB |
| 02-small-17 | RE | 60 ms | 14112 KiB |
| 02-small-18 | RE | 61 ms | 14076 KiB |
| 02-small-19 | AC | 127 ms | 14232 KiB |
| 03-large-00 | RE | 179 ms | 38916 KiB |
| 03-large-01 | RE | 176 ms | 38560 KiB |
| 03-large-02 | RE | 173 ms | 38616 KiB |
| 03-large-03 | RE | 179 ms | 38560 KiB |
| 03-large-04 | RE | 172 ms | 38968 KiB |
| 03-large-05 | RE | 172 ms | 38656 KiB |
| 03-large-06 | RE | 178 ms | 38744 KiB |
| 03-large-07 | RE | 174 ms | 38640 KiB |
| 03-large-08 | RE | 172 ms | 38848 KiB |
| 03-large-09 | RE | 178 ms | 38816 KiB |