1. 程式人生 > >2014年首屆CCF軟體能力認證試題第二題 .

2014年首屆CCF軟體能力認證試題第二題 .

題目 2 視窗
時間限制: 1 秒
空間限制: 256 MB
問題描述
在某圖形作業系統中,有 N 個視窗,每個視窗都是一個兩邊與座標軸
分別平行的矩形區域。視窗的邊界上的點也屬於該視窗。視窗之間有層次
的區別,在多於一個視窗重疊的區域裡,只會顯示位於頂層的窗口裡的內
容。
當你點選螢幕上一個點的時候,你就選擇了處於被點選位置的最頂層
視窗,並且這個視窗就會被移到所有視窗的最頂層,而剩餘的視窗的層次
順序不變。如果你點選的位置不屬於任何視窗,則系統會忽略你這次點選。
現在我們希望你寫一個程式模擬點選視窗的過程。
輸入格式
輸入的第一行有兩個正整數,即 N 和 M。(1 ≤ N ≤ 10,1 ≤ M ≤ 10)
接下來 N 行按照從最下層到最頂層的順序給出 N 個視窗的位置。
每行包含四個非負整數 x1, y1, x2, y2,表示該視窗的一對頂點座標分別為
(x1, y1) 和 (x2, y2)。保證 x1 < x2,y1 < y2。
接下來 M 行每行包含兩個非負整數 x, y,表示一次滑鼠點選的座標。
題目中涉及到的所有點和矩形的頂點的 x, y 座標分別不超過 2559 和
1439。
輸出格式
輸出包括 M 行,每一行表示一次滑鼠點選的結果。如果該次滑鼠點選
選擇了一個視窗,則輸出這個視窗的編號(視窗按照輸入中的順序從 1 編
號到 N);如果沒有,則輸出”IGNORED”(不含雙引號)。

#include<stdio.h>
#include<iostream>
using namespace std;
struct tras{
    int x1;
    int x2;
    int y1;
    int y2;
    int level;
};
int main()
{
    int n,m,a,b,c;
    int N,M;
    cin>>N>>M;
    n=N,m=M;
    tras tra[11];
    int ans[11];
    tras temp;
    a=1;
    while
(N) { cin>>tra[N].x1>>tra[N].y1>>tra[N].x2>>tra[N].y2; tra[N].level=a; N--; a++; } while(M) { cin>>b>>c; bool flag=false; for(int i=N;i>0;i--) { if(b>=tra[i].x1&&b<=tra[i].x2&&c>=tra[i].y1&&c<=tra[i].y2) { ans[M]=tra[i].level; temp=tra[i]; for
(int j=N;j>=2;j--) { tra[j]=tra[j-1]; } tra[1]=temp; flag=true; } if(flag==true) break; } if(!flag) ans[M]=0; M--; } for(int i=m;i>0;i--) { if(ans[i]!=0) cout<<ans[i]; else cout<<"IGNORED"; if(i!=1) cout<<" "; } cout<<endl; return 0; }

相關推薦

2014CCF軟體能力認證試題第二 .

題目 2 視窗 時間限制: 1 秒 空間限制: 256 MB 問題描述 在某圖形作業系統中,有 N 個視窗,每個視窗都是一個兩邊與座標軸 分別平行的矩形區域。視窗的邊界上的點也屬於該視窗。視窗之間有層次 的區別,在多於一個視窗重疊的區域裡

CCF計算機軟體能力認證試題練習:201403-1 相反數

相反數 來源: 標籤: 參考資料: 相似題目: 題目 有 N 個非零且各不相同的整數。請你編一個程式求出它們中有多少對相反數(a 和 -a 為一對相反數

CCF計算機軟體能力認證試題練習-門禁系統(Java參考答案學習記錄)

問題描述   濤濤最近要負責圖書館的管理工作,需要記錄下每天讀者的到訪情況。每位讀者有一個編號,每條記錄用讀者的編號來表示。給出讀者的來訪記錄,請問每一條記錄中的讀者是第幾次出現。 輸入格式

CCF計算機軟體能力認證試題練習-影象旋轉(Java參考答案學習記錄)

問題描述   旋轉是影象處理的基本操作,在這個問題中,你需要將一個影象逆時針旋轉90度。   計算機中的影象表示可以用一個矩陣來表示,為了旋轉一個影象,只需要將對應的矩陣旋轉即可。 輸入格式   輸入的第一行包含兩個整數n, m,分別表示影象矩陣的行數和列數。   

CCF計算機軟體能力認證試題練習-相鄰數對(Java參考答案學習記錄)

問題描述   給定n個不同的整數,問這些數中有多少對整數,它們的值正好相差1。 輸入格式   輸入的第一行包含一個整數n,表示給定整數的個數。   第二行包含所給定的n個整數。 輸出格式

CCF計算機軟體能力認證試題練習:201809-2 買菜

買菜 來源:CCF 標籤: 參考資料: 相似題目: 題目 小H和小W來到了一條街上,兩人分開買菜,他們買菜的過程可以描述為,去店裡買一些菜然後去旁邊的一個廣場把菜裝上車,兩人都要買n種菜,所以也都

CCF計算機軟體能力認證試題練習:201712-3 Crontab

Crontab 來源: 標籤: 參考資料: 相似題目: 題目 輸入 輸出 輸入樣例 3 201711170032 201711222352 0 7

201604-1折點計數——CCF計算機軟體能力認證試題歷屆真

一、原題 問題描述 試題編號: 201604-1 試題名稱: 折點計數 時間限制: 1.0s 記憶體限制: 256.0MB 問題描述: 問題描述   給定n個整數表示一個商店連續n天的銷售量。如果某天之前銷售量在增長,而後一天銷售量減少,則稱這一天

CCF能力認證歷屆第二

201809-2. 買菜 解題思路: 主要就是判斷小H和小W的裝車時間段是否有重疊區間。關於判斷重疊區間,對於給定的兩個區間(a,b)和(c,d),顯然當且僅當a≤d且b≥c時才會有重疊區間,而重疊區間長度L為min(b,d)-max(a,c),把所有重疊區間的長度進行累加求和,就可以知道倆人可以聊多

2018CCF計算機軟體能力認證試題

1. 201803-1 跳一跳 問題描述   近來,跳一跳這款小遊戲風靡全國,受到不少玩家的喜愛。   簡化後的跳一跳規則如下:玩家每次從當前方塊跳到下一個方塊,如果沒有跳到下一個方塊上則遊戲結束。   如果跳到了方塊上,但沒有跳到方塊的中心則獲得1分;

20164月CCF計算機軟體能力認證模擬試題程式碼參考

問題描述 給定n個正整數,找出它們中出現次數最多的數。如果這樣的數有多個,請輸出其中最小的一個。 輸入格式 輸入的第一行只有一個正整數n(1 ≤ n ≤ 1000),表示數字的個數。 輸入的第二行有n個整數s1, s2, …, sn (1 ≤ si ≤ 10000, 1 ≤

CCF計算機軟體能力認證 C++ 畫圖

問題描述   用 ASCII 字元來畫圖是一件有趣的事情,並形成了一門被稱為 ASCII Art 的藝術。例如,下圖是用 ASCII 字元畫出來的 CSPRO 字樣。    ..____.____..____..____...___.. ./._

CCF計算機軟體能力認證 C++ 俄羅斯方塊

問題描述   俄羅斯方塊是俄羅斯人阿列克謝·帕基特諾夫發明的一款休閒遊戲。   遊戲在一個15行10列的方格圖上進行,方格圖上的每一個格子可能已經放置了方塊,或者沒有放置方塊。每一輪,都會有一個新的由4個小方塊組成的板塊從方格圖的上方落下,玩家可以操作板塊左右移動放到合適的

第十三次CCF計算機軟體能力認證CSP題解

/* csp13-1 跳一跳 2017/04/02 by Tawn */ #include <bits/stdc++.h> using namespace std; const int maxn = 100; int main() { int i;

CCF計算機軟體能力認證模擬試題-最大的矩形(Java參考答案學習記錄)

問題描述   在橫軸上放了n個相鄰的矩形,每個矩形的寬度是1,而第i(1 ≤ i ≤ n)個矩形的高度是hi。這n個矩形構成了一個直方圖。例如,下圖中六個矩形的高度就分別是3, 1, 6, 5, 2, 3。   請找出能放在給定直方圖裡面積最大的矩形,它的邊要與座標軸平

CCF計算機職業資格認證考試題解(C++)

試題名稱: 出現次數最多的數 試題編號:201312-1 時間限制: 1.0s 記憶體限制: 256.0MB 問題描述   給定n個正整數,找出它們中出現次數最多的數。如果這樣的數有多個,請輸出其中最小的一個。 輸入格式   輸

第十三次CCF計算機軟體能力認證 題解(臨時版)

前言剛做完= =第五題寫炸了先大概講講我的思路,有機會我會寫個完整的題解(估計不可能啦,忙的要死)這些程式碼都是我比賽時候寫的,不保證正確性第一題水題,記錄最後一次的得分即可#include <cstdio> using namespace std; int ma

CCF計算機軟體能力認證模擬試題參考答案(JAVA)(201703 1+2)

1.分蛋糕: 小明今天生日,他有n塊蛋糕要分給朋友們吃,這n塊蛋糕(編號為1到n)的重量分別為a1, a2, …, an。小明想分給每個朋友至少重量為k的蛋糕。小明的朋友們已經排好隊準備領蛋糕,對於每個朋友,小明總是先將自己手中編號最小的蛋糕分給他,當這個朋友所分得蛋

201803-2碰撞的小球 CCF計算機軟體能力認證考試

試題編號: 201803-2 試題名稱: 碰撞的小球 時間限制: 1.0s 記憶體限制: 256.0MB 問題描述: 問題描述   數軸上有一條長度為L(L為偶數)的線段,左端點在原點,右端點在座標L處。有n個

第三次CCF計算機軟體能力認證考試題解(Java)--201412--Z字形掃描--100分通過

import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n;