package main

import "fmt"

func main() {
	// fmt.Println("hello go")
	// sq()
	// last_digit()
	// dozen()
	// clock()
	// what_is_value()
	// is_different()
	// what_first()
	// is_happiness()
	// is_leap()
	// foo1()
	// foo2()
	// foo3()
	// foo5()
	// foo6()
	// foo7()
	// time()
	// triangle2()
	// average()
	// min_count()
	digital_root()
}

func sq() {
	var foo int
	fmt.Scan(&foo)
	fmt.Println(foo * foo)
}

func last_digit() {
	var val int
	fmt.Scan(&val)
	fmt.Println(val % 10)
}

func dozen() {
	var val int
	fmt.Scan(&val)
	fmt.Println((val % 100) / 10)
}

func clock() {
	var degrees, hours, minutes int
	fmt.Scan(&degrees)
	hours = degrees / 30
	minutes = 2 * (degrees % 30)
	fmt.Println("It is", hours, "hours", minutes, "minutes.")
}

func what_is_value() {
	var val int
	fmt.Scan(&val)
	if val > 0 {
		fmt.Println("Число положительное")
	} else if val < 0 {
		fmt.Println("Число отрицательное")
	} else {
		fmt.Println("Ноль")
	}
}

func is_different() {
	var val int
	fmt.Scan(&val)
	first := val / 100
	second := val / 10 % 10
	third := val % 10

	if (first == second) || (first == third) || (second == third) {
		fmt.Println("NO")
	} else {
		fmt.Println("YES")
	}
}

// 9999
func what_first() {
	var val int
	fmt.Scan(&val)
	if val == 10000 {
		fmt.Println(val / 10000)
	} else if val > 999 {
		fmt.Println(val / 1000)
	} else if val > 99 {
		fmt.Println(val / 100)
	} else if val > 9 {
		fmt.Println(val / 10)
	} else {
		fmt.Println(val % 10)
	}
}

func is_happiness() {
	var val int
	fmt.Scan(&val)
	d1 := val / 100000
	val = val - d1*100000
	d2 := val / 10000
	val = val - d2*10000
	d3 := val / 1000
	val = val - d3*1000
	d4 := val / 100
	val = val - d4*100
	d5 := val / 10
	val = val - d5*10
	d6 := val % 10

	if (d1 + d2 + d3) == (d4 + d5 + d6) {
		fmt.Println("YES")
	} else {
		fmt.Println("NO")
	}
}

func is_leap() {
	var val int
	fmt.Scan(&val)
	if (val%400 == 0) || (val%4 == 0) && (val%100 != 0) {
		fmt.Println("YES")
	} else {
		fmt.Println("NO")
	}
}

func foo1() {
	var n, val, sum int
	fmt.Scan(&n)
	for i := 0; i < n; i++ {
		fmt.Scan(&val)
		if (val > 9) && (val < 100) && (val%8 == 0) {
			sum += val
		}
	}
	fmt.Println(sum)
}

func foo2() {
	var val, max, num int
	for {
		fmt.Scan(&val)
		if val == 0 {
			break
		}

		if max != 0 {
			if val == max {
				num += 1
			}
		}

		if val > max {
			max = val
			num = 0
		}
	}
	fmt.Println(num + 1)
}

func foo3() {
	var n, c, d int
	fmt.Scan(&n)
	fmt.Scan(&c)
	fmt.Scan(&d)

	for i := 1; i <= n; i++ {
		if (i%c == 0) && (i%d != 0) {
			fmt.Println(i)
			break
		}
	}
}

func foo4() {
	var val int
	for {
		fmt.Scan(&val)
		if val < 10 {
			continue
		}
		if val > 100 {
			break
		}
		fmt.Println(val)
	}
}

func foo5() {
	var x, p, y, years int
	fmt.Scan(&x)
	fmt.Scan(&p)
	fmt.Scan(&y)
	for {
		x += x * p / 100
		years++
		if x >= y {
			break
		}
	}
	fmt.Println(years)
}

func foo6() {
	var val1, val2, val2_copy, d1, d2 int
	dev1 := 10000
	dev2 := 10000
	fmt.Scan(&val1)
	fmt.Scan(&val2)

	for {
		if dev1 != 1 {
			d1 = val1 / dev1
			val1 = val1 - d1*dev1
		} else {
			d1 = val1 % 10
		}

		// fmt.Println(d1)

		dev2 = 10000
		val2_copy = val2
		for {
			if dev2 != 1 {
				d2 = val2_copy / dev2
				val2_copy = val2_copy - d2*dev2
			} else {
				d2 = val2_copy % 10
			}

			if d1 == d2 {
				fmt.Print(d1, " ")
			}

			if dev2 == 1 {
				break
			}
			dev2 /= 10
		}

		if dev1 == 1 {
			break
		}

		dev1 /= 10

		/*
			if d1 == 0 {
				continue
			}
		*/

	}
}

func foo7() {
	var val, reverse int
	fmt.Scan(&val)
	d1 := val / 100
	d2 := (val - d1*100) / 10
	d3 := val % 10
	reverse = d3*100 + d2*10 + d1
	fmt.Println(reverse)
}

func time() {
	var val int
	fmt.Scan(&val)
	hours := val / 3600
	minutes := (val - hours*3600) / 60

	fmt.Println("It is", hours, "hours", minutes, "minutes.")
}

func triangle() {
	var a, b, c int
	fmt.Scan(&a)
	fmt.Scan(&b)
	fmt.Scan(&c)
	if (a*a + b*b) == c*c {
		fmt.Println("Прямоугольный")
	} else {
		fmt.Println("Непрямоугольный")
	}
}

func triangle2() {
	var a, b, c int
	fmt.Scan(&a)
	fmt.Scan(&b)
	fmt.Scan(&c)

	if ((a + b) > c) && ((a + c) > b) && ((b + c) > a) {
		fmt.Println("Существует")
	} else {
		fmt.Println("Не существует")
	}
}

func average() {
	var a, b int
	fmt.Scan(&a)
	fmt.Scan(&b)
	avr := float32(a+b) / 2
	fmt.Printf("%v", avr)
}

func zero_count() {
	var n, counter, val int
	fmt.Scan(&n)
	for i := 0; i < n; i++ {
		fmt.Scan(&val)
		if val == 0 {
			counter++
		}
	}
	fmt.Println(counter)
}

func min_count() {
	var n, min, counter, val int
	fmt.Scan(&n)
	fmt.Scan(&min)
	counter = 1
	for i := 1; i < n; i++ {
		fmt.Scan(&val)
		if val == min {
			counter++
			fmt.Println(val, min, counter)
		} else if val < min {
			min = val
			counter = 1
			fmt.Println("m", val, min, counter)
		}

	}
	fmt.Println(counter)
}

func digital_root() {
	var val, sum, ret int
	// var counter = 0
	var digit int
	fmt.Scan(&val)

	for {
		if val == 0 {
			break
		}
		digit = val % 10
		sum += digit
		val /= 10
	}

	if sum > 9 {
		ret = sum%10 + sum/10
	} else {
		ret = sum
	}
	fmt.Println(ret)
}
