← Home
For problem statement at 0-999/600-699/650-659/652/problemC.txt this is a correct solution, but verifier at 0-999/600-699/650-659/652/verifierC.go ends with All tests passed! can you fix the verifier? ```go
package main

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

func main() {
	reader := bufio.NewReader(os.Stdin)
	writer := bufio.NewWriter(os.Stdout)
	defer writer.Flush()

	var n, m int
	if _, err := fmt.Fscan(reader, &n, &m); err != nil {
		return
	}

	p := make([]int, n+1)
	pos := make([]int, n+1)
	for i := 1; i <= n; i++ {
		fmt.Fscan(reader, &p[i])
		pos[p[i]] = i
	}

	maxL := make([]int, n+1)
	for i := 1; i <= n; i++ {
		maxL[i] = 0
	}

	for i := 0; i < m; i++ {
		var a, b int
		fmt.Fscan(reader, &a, &b)
		posA, posB := pos[a], pos[b]
		if posA > posB {
			posA, posB = posB, posA
		}
		if posA > maxL[posB] {
			maxL[posB] = posA
		}
	}

	var ans int64 = 0
	currentMaxL := 0
	for r := 1; r <= n; r++ {
		if maxL[r] > currentMaxL {
			currentMaxL = maxL[r]
		}
		ans += int64(r - currentMaxL)
	}

	fmt.Fprintln(writer, ans)
}
```