美文网首页
CCF201403-2 窗口(JAVA)

CCF201403-2 窗口(JAVA)

作者: 巨鹿lx | 来源:发表于2020-03-22 19:18 被阅读0次
    import java.util.Scanner;
    
    public class Main{
        public static class Node{
            int x1,y1,x2,y2,num;
            public Node(int x1, int y1, int x2, int y2,int num) {
                this.x1 = x1;
                this.y1 = y1;
                this.x2 = x2;
                this.y2 = y2;
                this.num = num;
            }
        }
        static Node stack[] = new Node[25]; 
        public static void main(String[] args) {
            Scanner scanner = new Scanner(System.in);
            int base = 0,top = -1;
            int n = scanner.nextInt();
            int m = scanner.nextInt();
            int j = 1;
            while(n-->0) {
                int x1 = scanner.nextInt();
                int y1 = scanner.nextInt();
                int x2 = scanner.nextInt();
                int y2 = scanner.nextInt();
                stack[++top] = new Node(x1,y1,x2,y2,j++);//用栈来保存每一个窗口的信息
            }
            while(m-->0) {
                int x = scanner.nextInt();
                int y = scanner.nextInt();
                int i = top;
                while(i!=-1) {
                    if(check(stack[i],x,y)) {//若点击到了窗口,则将此窗口移到栈顶
                        stack[++top] = stack[i];
                        System.out.println(stack[i].num);
                        break;
                    }
                    i--;
                }
                if(i==-1) System.out.println("IGNORED");//整个栈找不到就打印错误信息
            }
        }
        private static boolean check(Node node, int x, int y) {
            if(x>=node.x1&&x<=node.x2&&y>=node.y1&&y<=node.y2) return true;
            return false;
        }
    }
    

    相关文章

      网友评论

          本文标题:CCF201403-2 窗口(JAVA)

          本文链接:https://www.haomeiwen.com/subject/npgvyhtx.html