Problem:
Score: 100 points

Problem Statement

The weather in Takahashi's town changes day by day, in the following cycle: Sunny, Cloudy, Rainy, Sunny, Cloudy, Rainy, ...

Given is a string S representing the weather in the town today. Predict the weather tomorrow.

Constraints

S is Sunny, Cloudy, or Rainy.

Input

Input is given from Standard Input in the following format:

S

Output

Print a string representing the expected weather tomorrow, in the same format in which input is given.

Sample Input 1

Sunny

Sample Output 1

Cloudy

In Takahashi's town, a sunny day is followed by a cloudy day.

Sample Input 2

Rainy

Sample Output 2

Sunny

Solution in Rust (1.15.1) (judge verdict: Accepted)

use std::collections::HashMap;
use std::io;

fn main() {
    let mut next_weather = HashMap::new();
    next_weather.insert("Sunny".to_string(), "Cloudy".to_string());
    next_weather.insert("Cloudy".to_string(), "Rainy".to_string());
    next_weather.insert("Rainy".to_string(), "Sunny".to_string());
    let line = parse_line::<String>();
    println!("{}", next_weather.get(&line).unwrap());
}

fn parse_line<T: std::str::FromStr>() -> T {
    let mut s = String::new();
    io::stdin().read_line(&mut s).ok();
    s.trim().parse().ok().unwrap()
}