zoukankan      html  css  js  c++  java
  • NYOJ 1241 Distribution

    Distribution

     
     
    描述

    One day , Wang and Dong in the Dubai desert expedition, discovered an ancient castle. Fortunately, they found a map of the castle.The map marks the location of treasures.

    They agreed to distribute the treasures according to the following rules:

    Wang draws a horizontal line on the map and then Dong draws a vertical one so that the map is divided into 4 parts, as show below. 

    Wang will save the treasures in I and III ,while those situated in II and IV will be taken away by Dong. Wang first draw a horizontal line, Dong after the draw a vertical line.

    They drew several pairs of  lines. For each pair, Wang wants to know the difference between their treasures.

     

    It's guaranteed that all the reasures will lie on neither of the lines drew by them.

     
    输入
    the first line contains two integers N and M, where N is the number of treasures on the map and M indicates how many times they are going to draw the lines. The 2nd to (N+1)-th lines Xi, Yi contain the co-ordinates of the treasures and the last M lines consist of the M pairs integers (X, Y) which means that the two splitting lines intersect at point (X, Y).
    ( 0 < N, M ≤ 100, 0 ≤ Xi, Yi, X,Y ≤ 1000 )
    输出
    Output contains M lines , a single line with a integer , the difference described above
    样例输入
    10 3 
    29 22
    17 14 
    18 23
    3 15
    6 28
    30 27
    4 1
    26 7
    8 0
    11 21
    2 25
    5 10
    19 24
    
    样例输出
    -6
    4
    4

     1 #include<cstdio>
     2 using namespace std;
     3 
     4 struct point
     5 {
     6     int x,y;
     7 }p[105];
     8 
     9 int main()
    10 {
    11     int n,m;
    12     while(scanf("%d%d",&n,&m)!=EOF)
    13     {
    14         for(int i=0;i<n;i++)
    15             scanf("%d%d",&p[i].x,&p[i].y);
    16         while(m--)
    17         {
    18             int xx,yy;
    19             scanf("%d%d",&xx,&yy);
    20             int cnt1=0,cnt2=0;
    21             for(int j=0;j<n;j++)
    22             {
    23                 if(p[j].x-xx>0&&p[j].y-yy>0||(p[j].x-xx<0&&p[j].y-yy<0))
    24                     cnt1++;
    25                 else
    26                     cnt2++;
    27             }
    28             printf("%d
    ",cnt1-cnt2);
    29         }
    30     }
    31     return 0;
    32 }
  • 相关阅读:
    怎样理解 DOCTYPE 声明
    怎样理解 Vue 组件中 data 必须为函数 ?
    怎样在 Vue 里面使用自定义事件将子组件的数据传回给父组件?
    怎样在 Vue 的 component 组件中使用 props ?
    怎样创建并使用 vue 组件 (component) ?
    怎样在 Vue 中使用 v-model 处理表单?
    怎样理解 MVVM ( Model-View-ViewModel ) ?
    怎样在 Vue 中使用 事件修饰符 ?
    怎样在 Vue 里面绑定样式属性 ?
    怎样使用 Vue 的监听属性 watch ?
  • 原文地址:https://www.cnblogs.com/homura/p/4888384.html
Copyright © 2011-2022 走看看