TopcoderArchiveVisit Topcoder
SRM1 Nov 2010
SRM 507

CubeStickers

Problem statement, definition, constraints, and public examples.

Problem Statement

NOTE: This problem statement contains images that may not display properly if viewed outside of the applet.

Fox Ciel has a cube and some colored stickers. You are given a String[] sticker, where the i-th element is the color of the i-th sticker. Ciel wants to choose six of these stickers and apply one on each of the cube's faces. Each pair of adjacent faces must have different colors. Two faces are considered adjacent if they share an edge.

If this is possible, return "YES", otherwise, return "NO" (all quotes for clarity).

Definition

Class:
CubeStickers
Method:
isPossible
Parameters:
String[]
Returns:
String
Method signature:
String isPossible(String[] sticker)
(be sure your method is public)

Constraints

  • sticker will contain between 6 and 50 elements, inclusive.
  • Each element of sticker will contain between 1 and 10 lowercase letters ('a'-'z'), inclusive.

Examples

  1. {"cyan","magenta","yellow","purple","black","white","purple"}
    Returns: "YES"
    One of the possible ways is shown in the following picture:
  2. {"blue","blue","blue","blue","blue","blue","blue","blue","blue","blue"}
    Returns: "NO"
  3. {"red","yellow","blue","red","yellow","blue","red","yellow","blue"}
    Returns: "YES"
  4. {"purple","orange","orange","purple","black","orange","purple"}
    Returns: "NO"
  5. {"white","gray","green","blue","yellow","red","target","admin"}
    Returns: "YES"
Back to all problems