/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
final static int AlphabetSize = 26;
final static Scanner cin
= new Scanner
(System.
in); final static int MaxBarLength = 50;
public static void main
(String[] args
) { try {
processFile();
}
e.printStackTrace();
} // end try
} // end main
int inputValue;
// declare other variables you need
int counters [] = new int [26];
// get the first character from file
inputValue = inFile.read();
while (inputValue != -1) {
char ch = (char) inputValue;
// add code to process this character
if (ch >= 'a' && ch <= 'z'){
counters[ch - 'a']++;
}
// read next input character
inputValue = inFile.read();
} // end loop
inFile.close();
// generate appropriate output
display(counters);
} // end function
static void display(final int [] counters) {
// write code for this function
System.
out.
println("Letter" + " " + "Count"); System.
out.
println("------" + " " + "-----"); printChars(counters);
} // end function
// char2int is complete
static int char2int(final char arg) {
return -1;
else
return (int) Character.
toUpperCase(arg
) - (int) 'A'; } // end function
// function printChars writes n copies of the character c to the
// standard output device
static void printChars (final int[] counters) {
// write the code
for (int i = 0; i < 26; i++){
System.
out.
printf("%c%7d\n", i
+ 'A', counters
[i
]); }
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCQoJCmZpbmFsIHN0YXRpYyBpbnQgQWxwaGFiZXRTaXplID0gMjY7CmZpbmFsIHN0YXRpYyBTY2FubmVyIGNpbiA9IG5ldyBTY2FubmVyKFN5c3RlbS5pbik7CmZpbmFsIHN0YXRpYyBQcmludFN0cmVhbSBjb3V0ID0gU3lzdGVtLm91dDsKZmluYWwgc3RhdGljIGludCBNYXhCYXJMZW5ndGggPSA1MDsKCnB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKICAgIHRyeSB7CiAgICAgICAgcHJvY2Vzc0ZpbGUoKTsKICAgIH0KICAgIGNhdGNoIChJT0V4Y2VwdGlvbiBlKSB7CiAgICAgICAgZS5wcmludFN0YWNrVHJhY2UoKTsKICAgIH0gLy8gZW5kIHRyeQp9IC8vIGVuZCBtYWluCgpzdGF0aWMgdm9pZCBwcm9jZXNzRmlsZSgpIHRocm93cyBGaWxlTm90Rm91bmRFeGNlcHRpb24sIElPRXhjZXB0aW9uICB7CiAgICBJbnB1dFN0cmVhbSBpbkZpbGUgPSBTeXN0ZW0uaW47CiAgICBpbnQgaW5wdXRWYWx1ZTsKCiAgICAvLyBkZWNsYXJlIG90aGVyIHZhcmlhYmxlcyB5b3UgbmVlZAogICAgICAgICAgICBpbnQgY291bnRlcnMgW10gPSBuZXcgaW50IFsyNl07CgogICAgLy8gZ2V0IHRoZSBmaXJzdCBjaGFyYWN0ZXIgZnJvbSBmaWxlCiAgICBpbnB1dFZhbHVlID0gaW5GaWxlLnJlYWQoKTsKICAgIHdoaWxlIChpbnB1dFZhbHVlICE9IC0xKSB7CiAgICAgICAgY2hhciBjaCA9IChjaGFyKSBpbnB1dFZhbHVlOwoKICAgICAgICAvLyBhZGQgY29kZSB0byBwcm9jZXNzIHRoaXMgY2hhcmFjdGVyCiAgICAgICAgICAgICAgICAgICBpZiAoY2ggPj0gJ2EnICYmIGNoIDw9ICd6Jyl7CiAgICAgICAgICAgICAgICAgICAgICAgY291bnRlcnNbY2ggLSAnYSddKys7CiAgICAgICAgICAgICAgICAgICB9CgogICAgICAgIC8vIHJlYWQgbmV4dCBpbnB1dCBjaGFyYWN0ZXIKICAgICAgICBpbnB1dFZhbHVlID0gaW5GaWxlLnJlYWQoKTsKICAgIH0gLy8gZW5kIGxvb3AKCiAgICBpbkZpbGUuY2xvc2UoKTsKCiAgICAvLyBnZW5lcmF0ZSBhcHByb3ByaWF0ZSBvdXRwdXQKICAgICAgICAgICAgZGlzcGxheShjb3VudGVycyk7Cgp9IC8vIGVuZCBmdW5jdGlvbgoKc3RhdGljIHZvaWQgZGlzcGxheShmaW5hbCBpbnQgW10gY291bnRlcnMpIHsKICAgIC8vIHdyaXRlIGNvZGUgZm9yIHRoaXMgZnVuY3Rpb24KCiAgICBTeXN0ZW0ub3V0LnByaW50bG4oIkxldHRlciIgKyAiICIgKyAiQ291bnQiKTsKICAgIFN5c3RlbS5vdXQucHJpbnRsbigiLS0tLS0tIiArICIgIiArICItLS0tLSIpOwogICBwcmludENoYXJzKGNvdW50ZXJzKTsKICAgfSAvLyBlbmQgZnVuY3Rpb24KCi8vIGNoYXIyaW50IGlzIGNvbXBsZXRlCnN0YXRpYyBpbnQgY2hhcjJpbnQoZmluYWwgY2hhciBhcmcpIHsKICAgIGlmICghQ2hhcmFjdGVyLmlzTGV0dGVyKGFyZykpCiAgICAgICAgcmV0dXJuIC0xOwogICAgZWxzZQogICAgICAgIHJldHVybiAoaW50KSBDaGFyYWN0ZXIudG9VcHBlckNhc2UoYXJnKSAtIChpbnQpICdBJzsKfSAvLyBlbmQgZnVuY3Rpb24KCgovLyBmdW5jdGlvbiBwcmludENoYXJzIHdyaXRlcyBuIGNvcGllcyBvZiB0aGUgY2hhcmFjdGVyIGMgdG8gdGhlCi8vIHN0YW5kYXJkIG91dHB1dCBkZXZpY2UKc3RhdGljIHZvaWQgcHJpbnRDaGFycyAoZmluYWwgaW50W10gY291bnRlcnMpIHsKICAgIC8vIHdyaXRlIHRoZSBjb2RlCiAgICBmb3IgKGludCBpID0gMDsgaSA8IDI2OyBpKyspewogICAgICAgU3lzdGVtLm91dC5wcmludGYoIiVjJTdkXG4iLCBpICsgJ0EnLCBjb3VudGVyc1tpXSk7CiAgIH0KCiAgICAgICAgICAgfQoKCn0=