zzuli 1817: match number 模拟
1817: match number
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 199 Solved: 72
SubmitStatusWeb
Board
Description
喜欢写程序的同学一般对数字较为敏感。对于一串长度为2*n的号码,我们认为如果它符合以下条件,就是匹配的:
把这个号码分为左右两半部分,长度均为n。对于左半部分的每一位数,右半部分都存在一位严格大于它的数;或者对于左半部分的每一位数,右半部分都存在一位严格小于它的数。注意,右半部分的每一位必须对应左半部分的某一位,也就是每一位数只能“使用”一次。
给出一个号码,你能判断它是否是匹配的吗?
Input
多组数据。
第一行,1个整数n(n<1000)。
第二行,一串长度为2*n的号码,由'0'~'9'组成。
Output
对于每组数据,如果号码是匹配的,输出"YES",否则输出"NO"(引号不输出)。
Sample Input
2421
2
0135
2
3754
Sample Output
YES
NO
代码:
#include<iostream>
#include<string>
#include<algorithm>
#include<queue>
#include<stack>
#include<vector>
#include<cstdlib>
#include<cstring>
#include<cstdio>
#include<cmath>
using namespace std;
const int maxn=20005;
char s[maxn];
int ans[maxn],bns[maxn];
int n;
bool slove1() {
bool flag=true;
for(int i=0;i<n;++i) {
if(ans[i]>=bns[i]) {
flag=false;
break;
}
}
return flag;
}
bool slove2() {
bool flag=true;
for(int i=0;i<n;++i) {
if(ans[i]<=bns[i]) {
flag=false;
break;
}
}
return flag;
}
int main() {
while(~scanf("%d",&n)) {
scanf("%s",s);
for(int i=0;i<n;++i) {
ans[i]=s[i]-'0';
bns[i]=s[i+n]-'0';
}
sort(ans,ans+n);
sort(bns,bns+n);
if(slove1()||slove2()) {
printf("YES\n");
} else {
printf("NO\n");
}
}
return 0;
}
zzuli 1817: match number 模拟的更多相关文章
- Codeforces Round #350 (Div. 2) F. Restore a Number 模拟构造题
F. Restore a Number Vasya decided to pass a very large integer n to Kate. First, he wrote that num ...
- zzulioj--1817--match number(水题)
1817: match number Time Limit: 1 Sec Memory Limit: 128 MB Submit: 98 Solved: 45 SubmitStatusWeb Bo ...
- Rust 1.7.0 匹配器 match 的简介和使用
使用过正則表達式的人应该都知道 matcher ,通过 matcher 匹配器运算正則表達式,完毕一系列的匹配规则. 在Rust 中 没有 switch 语句.matcher 就是 switch 的一 ...
- java正则表达式语法详解及其使用代码实例
原文地址 译者序(下载代码) 正则表达式善于处理文本,对匹配.搜索和替换等操作都有意想不到的作用.正因如此,正则表达式现在是作为程序员七种基本技能之一*,因此学习和使用它在工作中都能达到很高的效率. ...
- Eloquent JavaScript #09# Regular Expressions
索引 Notes js创建正则表达式的两种方式 js正则匹配方式(1) 字符集合 重复匹配 分组(子表达式) js正则匹配方式(2) The Date class 匹配整个字符串 Choice pat ...
- R语言错误的提示(中英文翻译)
# Chinese translations for R package # Copyright (C) 2005 The R Foundation # This file is distribute ...
- JavaScript中的模式匹配
JavaScript中的模式匹配 模式是用于转换输入数据的规则. 以将数据与一个或多个逻辑结构进行比较,将数据分解为各个构成部分,或以各种方式从数据中提取信息. 安装 JavaScript已经实现模式 ...
- 数据结构与算法【Java】03---栈
前言 数据 data 结构(structure)是一门 研究组织数据方式的学科,有了编程语言也就有了数据结构.学好数据结构才可以编写出更加漂亮,更加有效率的代码. 要学习好数据结构就要多多考虑如何将生 ...
- .NET基础拾遗(5)多线程开发基础
Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理基础 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开 ...
随机推荐
- Single linked list by cursor
有了指针实现看似已经足够了,那为什么还要有另外的实现方式呢?原因是诸如BASIC和FORTRAN等许多语言都不支持指针,如果需要链表而又不能使用指针,那么就必须使用另外的实现方法.还有一个原因,是在A ...
- .NET Core 使用RSA算法 加密/解密/签名/验证签名
前言 前不久移植了支付宝官方的SDK,以适用ASP.NET Core使用支付宝支付,但是最近有好几位用户反应在Linux下使用会出错,调试发现是RSA加密的错误,下面具体讲一讲. RSA在.NET C ...
- 读书笔记-你不知道的JS上-混入与原型
继承 mixin混合继承 function mixin(obj1, obj2) { for (var key in obj2) { //重复不复制 if (!(key in obj1)) { obj1 ...
- 使用angular4和asp.net core 2 web api做个练习项目(三)
第一部分: http://www.cnblogs.com/cgzl/p/7755801.html 第二部分: http://www.cnblogs.com/cgzl/p/7763397.html 后台 ...
- 如何在 Apple TV 上使用描述文件
您可以使用 OS X 上的 Apple Configurator 在 Apple TV 上安装配置描述文件. 开始前,请在 Mac 上安装最新版本的 Apple Configurator(如果尚未安装 ...
- 分页查询时,使用cookie保存上次的查询条件。jQuery实现方法以及中间遇到的坑
今天做分页查询时需要在跳转页面时保存上次查询的条件,如下: 实现的大致思路就是用cookie本地保存. 其中需要用到jQuery.Cookie插件. 使用方法很简单: 存数据:$.cookie(“ke ...
- CMSIS_RTOS_Tutorial自译中文版
一.序言 本资料是Trevor Martin编写的<The Designers Guide to the Cortex-M Processor Family>的摘要,并得到Elsevier ...
- 诸葛马前课andoid app 应用
前段时间学了点安卓开发的知识,也在同时,陪家人看了<新闺蜜时代 >的后面几集,其中,周小北提到了诸葛马前课. 于是网上查了些资料,学习了一下马前课的计算方法,本着程序服务生活的原则,省去不 ...
- VS2015如何连接mySQL数据库图文
1.新建一个工程名叫mysql,编程环境选择c#,然后选择windows窗体应用程序,新建一个窗体用于显示查询到sql数据库的数据集 2.从工具箱向form1窗体上拖一个按钮和datagridview ...
- Linux ext2文件系统之初步思考
数据存放在磁盘中,磁盘最小存取单位sector(512Byte);文件系统中存储的最小单位是 块(Block),大小通常(1KB,2KB,4KB...), 一个block对应多个sector,因而可用 ...