阿裏筆試1
阿新 • • 發佈:2018-09-05
main void ng2 pre system str ++ 所有 ner
package sort; import java.util.ArrayList; import java.util.Scanner; public class Gongyi { public static void main(String[] args) { // TODO Auto-generated method stub // //第一行,表示馬老師下個月的空閑時間段。註意:一天內只會有一個連續空閑時間段。 格式為“day:hs-he:loc”,其中day為當月的x日,hs表示當天的空閑時段的起止小時,he表示當天的空閑時段的結束小時,loc表示當天所在地區。多天數據用分號;分割。如“1:12-16:Hangzhou;15:10-14:shanghai“表示1日12點到16點在杭州有空,15日10點到14點在上海有空。 // //第二行,表示3小時平臺上提供的下個月的所有線下誌願者公益項目信息。格式為“day:hs-h3:loc:vh” 前四個意思同上,vh代表該活動對應的公益時。多個活動用分號;分割。 如”1:10-12:Beijing:1;1:10-14:hangzhou:3“ 表示1日10點-12點北京有個活動,可獲取1公益時,1日10點-14點在杭州有個活動,可獲取3小時。 // // //註意,冒號、中橫杠和分號等分隔符都為英文半角符號。 // //輸出: // //輸出最多能得到的公益時 // //輸入範例: // //1:12-16:Hangzhou;15:10-14:shanghai // //1:10-12:Beijing:1;1:10-14:hangzhou:3;15:11-12:shanghai:0.5 // //輸出範例: // //0.5 Scanner sc=new Scanner(System.in); // ArrayList<String> kong=new ArrayList<String>(); // kong.put(); String kong = sc.next(); String activity =sc.next(); System.out.println(gongyishi(kong, activity)); } public static int gongyishi(String kong,String activity) { String[] kongDate=kong.split(";"); String[] actDate=activity.split(";"); ArrayList<Kongxian> arrkong=new ArrayList<Kongxian>(); for(String t:kongDate) { String[] k=t.split(":"); arrkong.add(new Kongxian(k[0], k[1],k[2],"0")); } ArrayList<Kongxian> arract=new ArrayList<Kongxian>(); for(String p:actDate) { String[] a=p.split(":"); arract.add(new Kongxian(a[0], a[1],a[2],a[3])); } int hour1=0; for(int i=0;i<arrkong.size();i++){ for(int j=0;j<arract.size();j++) { if(arrkong.get(i).date.equals(arract.get(j).date)&&arrkong.get(i).location.equals(arract.get(j).location)) { String[] time1=new String[2]; String[] time2=new String[2]; time1=arrkong.get(i).time.split("-"); time2=arract.get(j).time.split("-"); if(Integer.parseInt(time2[0])>=Integer.parseInt(time1[0])&&Integer.parseInt(time2[1])<=Integer.parseInt(time1[1])) { hour1+=Integer.parseInt(arract.get(j).hour); } } } } return hour1; // HashMap<Integer, HashMap<String,String>> kongDay=new HashMap<Integer,HashMap<String,String>>(); // HashMap<Integer, HashMap<String,String>> act=new HashMap<Integer,HashMap<String,String>>(); // HashMap<String, String> kongDay1=new HashMap<String, String>(); // HashMap<String, String> act1=new HashMap<String, String>(); //// int index1=0; // for(String t : kongDate) { // String[] kong2=t.split(":"); // kongDay1.put(kong2[0]+kong2[2],kong2[1]); // } //// int index2=0; // // for(String p : actDate) { // String[] act2=p.split(":"); // act1.put(act2[0]+act2[2],act2[1]); // } // for(String p : actDate) { // act.put(index2,p); // index2++; // } // 1:12-16:Hangzhou;15:10-14:shanghai // 1:10-12:Beijing:1;1:10-14:hangzhou:3;15:11-12:shanghai:0.5 // 輸出範例: // 0.5 } }
阿裏筆試1