[ create a new paste ] login | about

Link: http://codepad.org/5tZX6wBg    [ raw code | fork ]

Plain Text, pasted on Apr 7:
$ cat LowGrades.java 
import java.io.InputStream;
import java.io.PrintStream;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import java.util.Vector;

class
LowGrades {

  private static Map<String, Integer>
  in(InputStream ins) {

    final Scanner scanner = new Scanner(ins);
    scanner.useDelimiter("[|\n]");
    
    final HashMap<String, Integer> lowGrades = new HashMap<String, Integer>();

    while (scanner.hasNextInt()) {

      scanner.nextInt();

      final String course = scanner.next();

      int grade = scanner.nextInt();
      if (lowGrades.containsKey(course))
       grade = Math.min(lowGrades.get(course), grade);

      lowGrades.put(course, grade);
      }

    return lowGrades;
    }


  public static void
  main(String[] args) {
    out(System.out, in(System.in));
    }


  private static void
  out(PrintStream outs, Map<String, Integer> lowGrades) {
    
    final Vector<String> keys = new Vector<String>(lowGrades.keySet());
    Collections.sort(keys);
    
    for (String key : keys)
      outs.printf("%s %d%n", key, lowGrades.get(key));
    }
  }

$ javac -Xlint LowGrades.java 

$ cat LowGradesData
#! /usr/bin/awk -f

{for (i = 1; i <= NF; ++i) {
  l = length($i)
  lines[lcnt++] = "1|" $i "|" l
  n = int(rand()*10) + 1
  while (n-- > 0) {
    l += int(rand()*10)
    lines[lcnt++] = "1|" $i "|" l
    }
  }
 }

END {
  while (lcnt > 0) {
    l = int(rand()*lcnt)
    print lines[l]
    lines[l] = lines[--lcnt]
    }
  }

$ echo facts all come with points of view | ./LowGradesData
1|of|30
1|all|3
1|all|18
1|points|6
1|of|9
1|facts|16
1|with|13
1|all|13
1|all|21
1|view|36
1|come|31
1|facts|7
1|view|4
1|facts|15
1|of|46
1|all|4
1|come|13
1|view|25
1|come|25
1|with|8
1|view|22
1|view|35
1|all|12
1|view|15
1|with|18
1|of|23
1|view|43
1|with|7
1|of|37
1|view|57
1|facts|5
1|view|26
1|points|12
1|view|7
1|with|26
1|come|23
1|view|48
1|of|7
1|points|12
1|come|15
1|all|17
1|of|3
1|with|4
1|with|26
1|of|15
1|come|4
1|of|2

$ echo facts all come with points of view | ./LowGradesData | java LowGrades
all 3
come 4
facts 5
of 2
points 6
view 4
with 4

$ 



Create a new paste based on this one


Comments: