// Program 72: Decode ASCII Values from a Continuous String import java.util.*; class DecodeAscii { static boolean valid(int n) { return n == 32 || (n >= 65 && n <= 90) || (n >= 97 && n <= 122); } public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s = sc.nextLine().trim(); if (!s.matches("[0-9]+")) { System.out.println("INVALID INPUT"); return; } StringBuilder out = new StringBuilder(); int i = 0; while (i < s.length()) { int code = -1, len = 0; for (int size = 3; size >= 2; size--) { if (i + size <= s.length()) { int value = Integer.parseInt(s.substring(i, i + size)); if (valid(value)) { code = value; len = size; break; } } } if (code >= 0) { out.append((char) code); i += len; } else { i++; } } System.out.println(out); } }