UVA 11507 – Bender B. Rodríguez Problem

There’s really no need to attempt to code super simple programs more efficiently. Don’t be afraid to write a bunch of if-elses!

import java.io.PrintWriter;
import java.util.Scanner;

/**
 * 
 * @author Sanchit M. Bhatnagar
 * @see http://uhunt.felix-halim.net/id/74004
 * 
 */
public class P11507 {

  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    PrintWriter out = new PrintWriter(System.out);

    while (sc.hasNextInt()) {
      int L = sc.nextInt();
      if (L == 0)
        break;
      L--;

      String ans = "+x";
      for (int i = 0; i < L; i++) {
        String input = sc.next();
        if (!input.equals("No"))
          if (ans.equals("+x")) {
            ans = input.toString();
          } else if (ans.equals("-x")) {
            if (input.charAt(0) == '-') {
              ans = "+" + input.charAt(1);
            } else {
              ans = "-" + input.charAt(1);
            }
          } else if (ans.equals("+y")) {
            if (input.equals("+y")) {
              ans = "-x";
            } else if (input.equals("-y")) {
              ans = "+x";
            } else {
              ans = "+y";
            }
          } else if (ans.equals("-y")) {
            if (input.equals("+y")) {
              ans = "+x";
            } else if (input.equals("-y")) {
              ans = "-x";
            } else {
              ans = "-y";
            }
          } else if (ans.equals("+z")) {
            if (input.equals("+z")) {
              ans = "-x";
            } else if (input.equals("-z")) {
              ans = "+x";
            } else {
              ans = "+z";
            }
          } else if (ans.equals("-z")) {
            if (input.equals("+z")) {
              ans = "+x";
            } else if (input.equals("-z")) {
              ans = "-x";
            } else {
              ans = "-z";
            }
          }
      }
      out.println(ans);
    }

    out.close();
    sc.close();
  }
}

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.