USACO gifts1

文件输入输出问题搞定之后顺便再做个简单题,第一次尝试API里的hash table,貌似蛮方便的

 

import java.io.*; import java.util.*; import com.sun.org.apache.xalan.internal.xsltc.runtime.Hashtable; public class gift1 { public static void main(String[] args) throws IOException { BufferedReader in=new BufferedReader(new FileReader("gift1.in")); PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("gift1.out"))); int NP; Hashtable T=new Hashtable(); NP=Integer.parseInt(in.readLine()); String names[]=new String[10]; String name,another_name; int id,another_id; int give[]=new int[10]; int receive[]=new int[10]; for(int i=0;i<NP;i++) { name=in.readLine(); T.put(name,i); names[i]=name; } StringTokenizer str; int money,people; for(int i=0;i<NP;i++) { name=in.readLine(); id=(Integer) T.get(name); str=new StringTokenizer(in.readLine()); money=Integer.parseInt(str.nextToken()); people=Integer.parseInt(str.nextToken()); // if(people!=0) // receive[id]+=money%people; if(people!=0) give[id]=money-money%people; else give[id]=money; for(int j=0;j<people;j++) { another_name=in.readLine(); another_id=(Integer)T.get(another_name); receive[another_id]+=money/people; } } for(int i=0;i<NP;i++) { name=names[i]; // System.out.println(name); id=(Integer)T.get(name); out.println(name+" "+(receive[i]-give[i])); } out.close(); System.exit(0); } }  

你可能感兴趣的:(USACO gifts1)