← Home
For problem statement at 0-999/700-799/740-749/748/problemC.txt this is a correct solution, but verifier at 0-999/700-799/740-749/748/verifierC.go ends with All 100 tests passed can you fix the verifier? package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	in := bufio.NewReaderSize(os.Stdin, 1<<20)
	out := bufio.NewWriterSize(os.Stdout, 1<<20)
	defer out.Flush()

	var n int
	var s string
	fmt.Fscan(in, &n, &s)

	ans := 1
	mask := 0

	for i := 0; i < n; i++ {
		bit := 0
		switch s[i] {
		case 'L':
			bit = 1
		case 'R':
			bit = 2
		case 'U':
			bit = 4
		case 'D':
			bit = 8
		}

		newMask := mask | bit
		if (newMask&1 != 0 && newMask&2 != 0) || (newMask&4 != 0 && newMask&8 != 0) {
			ans++
			mask = bit
		} else {
			mask = newMask
		}
	}

	fmt.Fprint(out, ans)
}