• 阿里笔试1


    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
    		
    		
    	}
    }
    

      

  • 相关阅读:
    Ubuntu下的Apache、Mysql、PHP环境搭建
    JS代码引用位置问题-转
    mysql设置定时任务
    js setTimeout函数
    JavaScript向window onload添加加载函数
    写在开博之时
    WPF笔记(一)之初识XMAL
    创建理想的数据库索引
    常见负载均衡算法
    Java设计模式之外观模式
  • 原文地址:https://www.cnblogs.com/ncznx/p/9590357.html
Copyright © 2020-2023  润新知