package yukicoder import kotlin.math.* import java.util.* class Main(private val args : Array) : Runnable { override fun run() { solve(args) } private fun solve(@Suppress("UNUSED_PARAMETER") args: Array) { Scanner(System.`in`).use { sc -> val H = sc.nextInt() val W = sc.nextInt() val Q = sc.nextInt() val map = HashMap() var ans = H.toLong() * W repeat(Q){ val Y = sc.nextInt() val X = sc.nextInt() if (map.containsKey(X)) { val v = map[X]!! ans -= max(0, v - Y) map[X] = min(v, Y) } else { ans -= H - Y + 1 map[X] = Y } println(ans) } } } } /** 確保するメモリの大きさ(単位: MB) */ private const val MEMORY: Long = 64 fun main(args: Array) { Thread.setDefaultUncaughtExceptionHandler { _: Thread?, e: Throwable -> e.printStackTrace() System.exit(1) } Thread(null, Main(args = args), "", MEMORY * 1048576L).start() }