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与数据库开 ...
随机推荐
- LeetCode 39. Combination Sum (组合的和)
Given a set of candidate numbers (C) (without duplicates) and a target number (T), find all unique c ...
- OpenCV4Android背景建模(MOG、MOG2)
本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃 很久以前的笔记了,分享给大家吧...OpenCV4Android中用于背景建模的类主要 ...
- 微信小程序之页面下拉刷新
如果需要给单个页面设置下拉刷新功能,不需要写在""window"对象里面,直接在 文件名称.json 里面设置即可 { "enablePullDownRefr ...
- IIS 服务无法在此时接受控制信息
应用程序池无法重新启动,报错:服务无法在此时接受控制信息 解决方法:重启 Credential Manager服务即可
- 从Matlab文件中读取mxArray类型变量-部分代码分析
这是我做的笔记,看到这个代码时觉得处理有点妙,做笔记记录之. 部分源代码: .... int main(int argc,char** argv) { char name[_FILE_NAME_LEN ...
- ⑾bootstrap组件 徽章 大屏 页头 基础案例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 阿里云RDS for SQL Server使用的一些最佳实践
了解RDS的概念 这也是第一条,也是最重要的一条,在使用某项产品和服务之前,首先要了解该产品或服务的功能与限制,就像你买一个冰箱或洗衣机,通常也只有在阅读完说明书之后才能利用起来它们的所以功能,以及使 ...
- VUE环境配置——运行Demo
如果有Vue的Demo 不知道怎么运行的同学可以看这里 这里只讲Win下面环境配置 一.NodeJs安装 1.下载Windows 安装包(.msi),并安装https://nodejs.org/d ...
- 教你如何实现微信小程序与.net core应用服务端的无状态身份验证
随着.net core2的发布,越来越多人使用.net core2开发各种应用服务端,下面我就结合自己最近开发的一款小程序,给大家分享下,怎么使用小程序登录后,小程序与服务端交互的权限控制. .net ...
- css基础-语法篇
CSS基础 1.css简介 cascading style sheets 汉译层叠样式表,WEB标准中的表现标准语言,表现标准语言在网页中主要对网页信息的显示进行控制,简单说就是如何修饰网页信息 ...