您的位置:首页 > 产品设计 > UI/UE

Amazon Campus(2013-Sep-22)Question 1 / 2 (Amazon Campus(5): completely inside interval)

2013-09-22 12:56 351 查看
Question 1 / 2 (Amazon Campus(5): completely inside interval)

Given a set of open intervals, check whether there exists an interval which is completely inside another interval. If exists, print “1”, otherwise print “0”. You just need to consider the case that all the end points are integers and there are no exactly
the same open intervals.

Input:

n --- number of open intervals

a_1 b_1 a_2 b_2 ... a_n b_n ------ n open intervals (a_1, b_1) ... (a_n, b_n), in which a_i < b_i for all i

Output:

1 (meaning that there exists an interval which is completely inside another interval) or 0 (otherwise)

Sample Input 1

3

1 2 3 4 5 6

Sample Output 1

0

Sample Input 2

2

1 4 2 3

Sample Output 2

1

static int interval(int[] a) {
        // a : storing all the end points, in the same order as the input, that is, a_1 b_1 a_2 b_2 ... a_n b_n
        // return value: 1 (meaning that there exists an interval which is completely inside another interval) or 0 (otherwise)
        int flag = 0;
    	for(int i=0; i<a.length-1; i+=2) {
    		for(int j=0; j!=i&&j<a.length-1; j+=2) {
    			if((a[i]<=a[j] && a[i+1]>=a[j+1]) || (a[j]<=a[i] && a[j+1]>=a[i+1])) {
    				flag = 1;
    				break;
    			}
    		}
    	}
    	return flag;

    }


注意:等于的情况也算全部包含。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: