zoukankan      html  css  js  c++  java
  • hdu 2037 这个夏天不AC (java)

    问题:
    这个题为项贪心算法。我们的想法是在第一时间每个周期根据结束排序(按结束越早穿越,更多的程序),
    然后从第一个节目开始。假设下一个节目的开始时间大于一个节目的开始时间,是进行程序,依次递推。


    输入,要求两个数字为一组的一个数,明显,后改用二维数组,

    尽管麻烦了点。只是结构比較清晰。


    今年暑假不AC

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
    Total Submission(s): 34333    Accepted Submission(s): 18301


    Problem Description
    “今年暑假不AC?”
    “是的。


    “那你干什么呢?”
    “看世界杯呀。笨蛋!


    “@#$%^&*%...”

    确实如此。世界杯来了。球迷的节日也来了,预计非常多ACMer也会抛开电脑。奔向电视了。


    作为球迷,一定想看尽量多的完整的比赛,当然。作为新时代的好青年,你一定还会看一些其他的节目,比方新闻联播(永远不要忘记关心国家大事)、很6+7、超级女生,以及王小丫的《开心辞典》等等,如果你已经知道了全部你喜欢看的电视节目的转播时间表。你会合理安排吗?(目标是能看尽量多的完整节目)

     

    Input
    输入数据包括多个測试实例。每一个測试实例的第一行仅仅有一个整数n(n<=100),表示你喜欢看的节目的总数,然后是n行数据。每行包括两个数据Ti_s,Ti_e (1<=i<=n),分别表示第i个节目的開始和结束时间。为了简化问题,每一个时间都用一个正整数表示。n=0表示输入结束。不做处理。


     

    Output
    对于每一个測试实例,输出能完整看到的电视节目的个数。每一个測试实例的输出占一行。
     

    Sample Input
    12 1 3 3 4 0 7 3 8 15 19 15 20 10 15 8 18 6 12 5 10 4 14 2 9 0
     

    Sample Output
    5

    代码:

    import java.util.*;
    
    public class Main{
    	public static void main(String[] args) {
    		Scanner cin=new Scanner(System.in);
    		while(cin.hasNext()){
    			int n=cin.nextInt();
    			if(n==0)
    				break;
    			else
    			{
    				int a[][]=new int[2][n];
    				for(int i=0;i<n;i++){
    					a[0][i]=cin.nextInt();	
    					a[1][i]	=cin.nextInt();			
    				}	
    				for(int i=0;i<n-1;i++)
    				{
    					for(int j=i+1;j<n;j++){
    						if(a[1][i]>a[1][j]){
    							int t=a[0][i];
    							a[0][i]=a[0][j];
    							a[0][j]=t;
    							int c=a[1][i];
    							a[1][i]=a[1][j];
    							a[1][j]=c;
    						}
    					}
    				}
    				int s;
    				int count=1;
    				s=a[1][0];
    				for(int i=1;i<n;i++){
    					if(a[0][i]>=s){
    						count++;
    						s=a[1][i];
    					}						
    				}
    				System.out.println(count);
    			}
    		}
    	}
    }


  • 相关阅读:
    POJ 1659 Frogs' Neighborhood
    zoj 2913 Bus Pass(BFS)
    ZOJ 1008 Gnome Tetravex(DFS)
    POJ 1562 Oil Deposits (DFS)
    zoj 2165 Red and Black (DFs)poj 1979
    hdu 3954 Level up
    sgu 249 Matrix
    hdu 4417 Super Mario
    SPOJ (BNUOJ) LCM Sum
    hdu 2665 Kth number 划分树
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4582344.html
Copyright © 2011-2022 走看看