zoukankan      html  css  js  c++  java
  • 周题:UVa10736题。Foreign Exchange

    题目大意:

    有n(1<=n<=500000)个学生想交换到其他学校学习。为了简单起见,规定每个想从A学校换到B学校的学生必须找一个想到B换到A的搭档。如果每个人都能搭档(一个人不能同时当多个人的搭档),学校就会同意他们交换。每个学生用两个整数A,B表示,你的任务是判断交换是否可行。

    sample input:

    10

    1 2

    2 1

    3 4

    4 3

    100 200

    57 2

    2 57

    1 2

    2 1

    10

    1 2

    3 4

    5 6

    7 8

    9 10

    11 12

    13 14

    15 16

    17 18

    19 20

    0

    sample output:

    YES

    NO

    程序如下:

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<algorithm>
     4 using namespace std;
     5 
     6 int a[500000],b[500000];
     7 int main()
     8 {
     9     int n,i;
    10     while(scanf("%d",&n)!=EOF && n)
    11     {
    12         for( i=0;i<n;i++)
    13             scanf("%d%d",&a[i],&b[i]);
    14         
    15         sort(a,a+n);
    16         sort(b,b+n);
    17         for(i=0;i<n;i++)
    18         {
    19             if(a[i]!=b[i])
    20             {    
    21                 printf("NO
    ");
    22                 break;
    23             }
    24         }
    25         if(i==n)
    26             printf("YES
    ");
    27     }
    28     return 0;
    29 }


    此题关键是应用排序。

  • 相关阅读:
    sftp 使用笔记
    python-day001获取mac地址
    tomcat 修改端口
    mysql 封装与使用
    redis 封装使用
    centos7安装jenkins
    securecrt设置编码、字体、编码
    linux操作系统上路由管理维护
    ElasticSearch操作和使用指南
    sqlyog连接mysql错误码2058
  • 原文地址:https://www.cnblogs.com/x512149882/p/4655680.html
Copyright © 2011-2022 走看看