Submission #3402265


Source Code Expand

package main

import "fmt"

func main() {
	dir := []string{"East", "", "West"}

	var n, a, b int
	fmt.Scan(&n, &a, &b)
	x := 0
	for i := 0; i < n; i++ {
		x += move(a, b, dir)
	}
	output(x, dir)
}

func output(x int, dir []string) {
	fmt.Print(dir[sign(x)+1])
	if sign(x) != 0 {
		fmt.Print(" ")
	}
	fmt.Println(abs(x))
}

func move(smallest, largest int, dir []string) int {
	var s string
	var d int
	fmt.Scan(&s, &d)

	for i, v := range dir {
		if s == v {
			return max(smallest, min(largest, d)) * (i - 1)
		}
	}
	return 0
}

func sign(x int) int {
	if x == 0 {
		return 0
	}
	return x / abs(x)
}

func abs(x int) int {
	if x < 0 {
		return -x
	}
	return x
}

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
}

Submission Info

Submission Time
Task B - 双子とスイカ割り
User ToshiroYanagi
Language Go (1.6)
Score 100
Code Size 855 Byte
Status AC
Exec Time 2 ms
Memory 512 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 36
Set Name Test Cases
Sample sample-01.txt, sample-02.txt, sample-03.txt
All sample-01.txt, sample-02.txt, sample-03.txt, test-01.txt, test-02.txt, test-03.txt, test-04.txt, test-05.txt, test-06.txt, test-07.txt, test-08.txt, test-09.txt, test-10.txt, test-11.txt, test-12.txt, test-13.txt, test-14.txt, test-15.txt, test-16.txt, test-17.txt, test-18.txt, test-19.txt, test-20.txt, test-21.txt, test-22.txt, test-23.txt, test-24.txt, test-25.txt, test-26.txt, test-27.txt, test-28.txt, test-29.txt, test-30.txt, sample-01.txt, sample-02.txt, sample-03.txt
Case Name Status Exec Time Memory
sample-01.txt AC 1 ms 512 KB
sample-02.txt AC 1 ms 512 KB
sample-03.txt AC 1 ms 512 KB
test-01.txt AC 1 ms 512 KB
test-02.txt AC 1 ms 512 KB
test-03.txt AC 1 ms 512 KB
test-04.txt AC 1 ms 512 KB
test-05.txt AC 1 ms 512 KB
test-06.txt AC 1 ms 512 KB
test-07.txt AC 1 ms 512 KB
test-08.txt AC 1 ms 512 KB
test-09.txt AC 1 ms 512 KB
test-10.txt AC 1 ms 512 KB
test-11.txt AC 1 ms 512 KB
test-12.txt AC 2 ms 512 KB
test-13.txt AC 2 ms 512 KB
test-14.txt AC 2 ms 512 KB
test-15.txt AC 2 ms 512 KB
test-16.txt AC 2 ms 512 KB
test-17.txt AC 2 ms 512 KB
test-18.txt AC 2 ms 512 KB
test-19.txt AC 2 ms 512 KB
test-20.txt AC 2 ms 512 KB
test-21.txt AC 2 ms 512 KB
test-22.txt AC 2 ms 512 KB
test-23.txt AC 2 ms 512 KB
test-24.txt AC 2 ms 512 KB
test-25.txt AC 2 ms 512 KB
test-26.txt AC 2 ms 512 KB
test-27.txt AC 2 ms 512 KB
test-28.txt AC 2 ms 512 KB
test-29.txt AC 2 ms 512 KB
test-30.txt AC 2 ms 512 KB