Submission #62280999
Source Code Expand
package main
import (
"bufio"
"fmt"
"io"
"os"
"sort"
)
func main() {
solve(os.Stdin, os.Stdout)
}
func solve(_r io.Reader, _w io.Writer) {
in, out := bufio.NewReader(_r), bufio.NewWriter(_w)
defer out.Flush()
type pair struct{ x, y int }
n, w := readTwoNums(in)
pos := make([]pair, n)
nums := make([][]int, w+1)
for i := range pos {
pos[i].x, pos[i].y = readTwoNums(in)
nums[pos[i].x] = append(nums[pos[i].x], pos[i].y)
}
mxcnt := n
for i := 1; i <= w; i++ {
sort.Ints(nums[i])
mxcnt = min(mxcnt, len(nums[i]))
}
times := make([]int, mxcnt)
for j := 1; j <= w; j++ {
for i := range times {
times[i] = max(times[i], nums[j][i])
}
}
t := make([]int, n)
for i := range pos {
idx := sort.SearchInts(nums[pos[i].x], pos[i].y)
if idx < mxcnt {
t[i] = times[idx]
} else {
t[i] = -1
}
}
for q := readNum(in); q > 0; q-- {
v, a := readTwoNums(in)
if t[a-1] == -1 || v < t[a-1] {
fmt.Fprintln(out, "Yes")
} else {
fmt.Fprintln(out, "No")
}
}
}
func max(a, b int) int {
if a >= b {
return a
}
return b
}
func min(a, b int) int {
if a <= b {
return a
}
return b
}
func readString(reader *bufio.Reader) string {
s, _ := reader.ReadString('\n')
for i := 0; i < len(s); i++ {
if s[i] == '\n' || s[i] == '\r' {
return s[:i]
}
}
return s
}
func readInt(bytes []byte, from int, val *int) int {
i := from
sign := 1
if bytes[i] == '-' {
sign = -1
i++
}
tmp := 0
for i < len(bytes) && bytes[i] >= '0' && bytes[i] <= '9' {
tmp = tmp*10 + int(bytes[i]-'0')
i++
}
*val = tmp * sign
return i
}
func readNum(reader *bufio.Reader) (a int) {
bs, _ := reader.ReadBytes('\n')
readInt(bs, 0, &a)
return
}
func readTwoNums(reader *bufio.Reader) (a int, b int) {
res := readNNums(reader, 2)
a, b = res[0], res[1]
return
}
func readThreeNums(reader *bufio.Reader) (a int, b int, c int) {
res := readNNums(reader, 3)
a, b, c = res[0], res[1], res[2]
return
}
func readNNums(reader *bufio.Reader, n int) []int {
res := make([]int, n)
x := 0
bs, _ := reader.ReadBytes('\n')
for i := 0; i < n; i++ {
for x < len(bs) && (bs[x] < '0' || bs[x] > '9') && bs[x] != '-' {
x++
}
x = readInt(bs, x, &res[i])
}
return res
}
Submission Info
| Submission Time |
|
| Task |
D - Gravity |
| User |
xylu |
| Language |
Go (go 1.20.6) |
| Score |
400 |
| Code Size |
2351 Byte |
| Status |
AC |
| Exec Time |
73 ms |
| Memory |
21136 KiB |
Judge Result
| Set Name |
Sample |
All |
| Score / Max Score |
0 / 0 |
400 / 400 |
| Status |
|
|
| Set Name |
Test Cases |
| Sample |
00_sample_01.txt, 00_sample_02.txt |
| All |
00_sample_01.txt, 00_sample_02.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt |
| Case Name |
Status |
Exec Time |
Memory |
| 00_sample_01.txt |
AC |
0 ms |
1612 KiB |
| 00_sample_02.txt |
AC |
0 ms |
1616 KiB |
| 01_test_01.txt |
AC |
25 ms |
7176 KiB |
| 01_test_02.txt |
AC |
70 ms |
15448 KiB |
| 01_test_03.txt |
AC |
48 ms |
9600 KiB |
| 01_test_04.txt |
AC |
66 ms |
12264 KiB |
| 01_test_05.txt |
AC |
45 ms |
11504 KiB |
| 01_test_06.txt |
AC |
63 ms |
15868 KiB |
| 01_test_07.txt |
AC |
21 ms |
5824 KiB |
| 01_test_08.txt |
AC |
64 ms |
15756 KiB |
| 01_test_09.txt |
AC |
55 ms |
10292 KiB |
| 01_test_10.txt |
AC |
60 ms |
12648 KiB |
| 01_test_11.txt |
AC |
37 ms |
12176 KiB |
| 01_test_12.txt |
AC |
64 ms |
15620 KiB |
| 01_test_13.txt |
AC |
43 ms |
7596 KiB |
| 01_test_14.txt |
AC |
66 ms |
12236 KiB |
| 01_test_15.txt |
AC |
26 ms |
8376 KiB |
| 01_test_16.txt |
AC |
73 ms |
21136 KiB |
| 01_test_17.txt |
AC |
28 ms |
5812 KiB |
| 01_test_18.txt |
AC |
61 ms |
16020 KiB |
| 01_test_19.txt |
AC |
8 ms |
3552 KiB |
| 01_test_20.txt |
AC |
64 ms |
15840 KiB |
| 01_test_21.txt |
AC |
46 ms |
11824 KiB |
| 01_test_22.txt |
AC |
64 ms |
13608 KiB |
| 01_test_23.txt |
AC |
44 ms |
12292 KiB |
| 01_test_24.txt |
AC |
55 ms |
14816 KiB |
| 01_test_25.txt |
AC |
49 ms |
17392 KiB |
| 01_test_26.txt |
AC |
64 ms |
19496 KiB |