Table of Contents A. Generous KefaB. GodsendC. Leha and Function

A. Generous Kefa

One day Kefa found n baloons. For convenience, we denote color of i-th baloon as s**i — lowercase letter of the Latin alphabet. Also Kefa has k friends. Friend will be upset, If he get two baloons of the same color. Kefa want to give out all baloons to his friends. Help Kefa to find out, can he give out all his baloons, such that no one of his friens will be upset — print «YES», if he can, and «NO», otherwise. Note, that Kefa's friend will not upset, if he doesn't get baloons at all.

Input

The first line contains two integers n and k (1 ≤ n, k ≤ 100) — the number of baloons and friends.

Next line contains string s — colors of baloons.

Output

Answer to the task — «YES» or «NO» in a single line.

You can choose the case (lower or upper) for each letter arbitrary.

Examples

input

4 2
aabb

output

YES

input

6 3
aacaab

output

NO

Note

In the first sample Kefa can give 1-st and 3-rd baloon to the first friend, and 2-nd and 4-th to the second.

In the second sample Kefa needs to give to all his friends baloons of color a, but one baloon will stay, thats why answer is «NO».

题意:将气球全部发给一些人,每个人不能收到相同颜色的气球,是否可以将气球全部发出去。

#include <bits/stdc++.h>

using namespace std;

char str[105];
int num[30]; int main(int argc, char const *argv[])
{
int n,k;
scanf("%d%d",&n,&k);
scanf("%s",str); for(int i=0;i<n;i++)
num[str[i]-'a']++;
bool flag = true;
for(int i=0;i <26;i++) {
if(num[i]>k) {
flag = false;
break;
} } if(flag)
puts("YES");
else puts("NO"); return 0;
}

B. Godsend

Leha somehow found an array consisting of n integers. Looking at it, he came up with a task. Two players play the game on the array. Players move one by one. The first player can choose for his move a subsegment of non-zero length with an odd sum of numbers and remove it from the array, after that the remaining parts are glued together into one array and the game continues. The second player can choose a subsegment of non-zero length with an even sum and remove it. Loses the one who can not make a move. Who will win if both play optimally?

Input

First line of input data contains single integer n (1 ≤ n ≤ 106) — length of the array.

Next line contains n integers a1, a2, ..., an (0 ≤ ai ≤ 109).

Output

Output answer in single line. "First", if first player wins, and "Second" otherwise (without quotes).

Examples

input

4
1 3 2 3

output

First

input

2
2 2

output

Second

Note

In first sample first player remove whole array in one move and win.

In second sample first player can't make a move and lose.

题意:博弈,给一个数列,第一个人先手,每次选取一个奇数区间拿走,第二个后手,每次选取一个偶数区间拿走,谁不能动,谁输。

分析:数据量很大,而且不能区间求和,说明这和奇偶相关。

当整个区间为奇数时,先手全部拿走。

当整个区间有奇数个奇数(先手全部拿走)。

当整个区间有偶数个奇数(先手拿的只剩下一个奇数。后手却只能拿不走那个奇数,先手第二次全部拿走)

#include <bits/stdc++.h>

using namespace std;

const int maxn = 1e6+5;
int a[maxn]; int main(int argc, char const *argv[])
{
int n;
cin>>n; long long sum = 0;
int u;
int cnt1,cnt2;
cnt1 = cnt2 = 0;
for(int i=0; i < n; i++) {
scanf("%d",&u);
a[i] = u%2;
sum+=a[i]; if(a[i]%2) cnt1++;
else cnt2++;
} if(sum%2)
puts("First");
else {
if(cnt1>0)
puts("First");
else puts("Second");
}
return 0;
}

C. Leha and Function

Leha like all kinds of strange things. Recently he liked the function F(n, k). Consider all possible k-element subsets of the set [1, 2, ..., n]. For subset find minimal element in it. F(n, k) — mathematical expectation of the minimal element among all k-element subsets.

But only function does not interest him. He wants to do interesting things with it. Mom brought him two arrays A and B, each consists of m integers. For all i, j such that 1 ≤ i, j ≤ m the condition Ai ≥ Bj holds. Help Leha rearrange the numbers in the array A so that the sum is maximally possible, where A' is already rearranged array.

Input

First line of input data contains single integer m (1 ≤ m ≤ 2·105) — length of arrays A and B.

Next line contains m integers a1, a2, ..., am (1 ≤ ai ≤ 109) — array A.

Next line contains m integers b1, b2, ..., bm (1 ≤ bi ≤ 109) — array B.

Output

Output m integers a'1, a'2, ..., a'm — array A' which is permutation of the array A.

Examples

input

5
7 3 5 3 4
2 1 3 2 3

output

4 7 3 5 3

input

7
4 6 5 8 8 2 6
2 1 2 2 1 1 2

output

2 6 4 5 8 8 6

题意:

F(n,k) 函数,从 1~n 个数中,挑取 k 个数,然后取这个集合中最小的值,F(n,k),就是这个最小值的期望。

推导,F(n,k)=\frac{n+1}{k+1} 没仔细去推。

然后,\sum_{i=1}^mF(A_i',B_i) 最大时,A数组重排。

贪心,A中最大的元素匹配B中最小的元素。

#include <bits/stdc++.h>

using namespace std;
const int maxn = 200005; struct node {
int x;
int id;
}a[maxn],b[maxn]; bool cmp(node a,node b) {
return a.x < b.x;
} bool cmp2(node a,node b) {
return a.x > b.x;
} bool cmp3(node a,node b) {
return a.id < b.id;
} int main() { int m;
scanf("%d",&m);
for(int i=0; i < m; i++) {
scanf("%d",&a[i].x);
a[i].id = i;
} for(int i=0; i < m; i++) {
scanf("%d",&b[i].x);
b[i].id = i;
} sort(a,a+m,cmp2);
sort(b,b+m,cmp); for(int i=0; i < m; i++)
a[i].id = b[i].id; sort(a,a+m,cmp3);
for(int i=0; i < m; i++)
printf("%d ",a[i].x); return 0;
}

Codeforces Round #429的更多相关文章

  1. CodeForces 840C - On the Bench | Codeforces Round #429 (Div. 1)

    思路来自FXXL中的某个链接 /* CodeForces 840C - On the Bench [ DP ] | Codeforces Round #429 (Div. 1) 题意: 给出一个数组, ...

  2. CodeForces 840B - Leha and another game about graph | Codeforces Round #429(Div 1)

    思路来自这里,重点大概是想到建树和无解情况,然后就变成树形DP了- - /* CodeForces 840B - Leha and another game about graph [ 增量构造,树上 ...

  3. CodeForces 840A - Leha and Function | Codeforces Round #429 (Div. 1)

    /* CodeForces 840A - Leha and Function [ 贪心 ] | Codeforces Round #429 (Div. 1) A越大,B越小,越好 */ #includ ...

  4. codeforces Round#429 (Div2)

    2017-08-20 10:00:37 writer:pprp 用头文件#include <bits/stdc++.h>很方便 A. Generous Kefa codeforces 84 ...

  5. 【Codeforces Round #429 (Div. 2) A】Generous Kefa

    [Link]:http://codeforces.com/contest/841/problem/A [Description] [Solution] 模拟,贪心,每个朋友尽量地多给气球. [Numb ...

  6. Codeforces Round #429 (Div. 2/Div. 1) [ A/_. Generous Kefa ] [ B/_. Godsend ] [ C/A. Leha and Function ] [ D/B. Leha and another game about graph ] [ E/C. On the Bench ] [ _/D. Destiny ]

    PROBLEM A/_ - Generous Kefa 题 OvO http://codeforces.com/contest/841/problem/A cf 841a 解 只要不存在某个字母,它的 ...

  7. 【Codeforces Round #429 (Div. 2) C】Leha and Function

    [Link]:http://codeforces.com/contest/841/problem/C [Description] [Solution] 看到最大的和最小的对应,第二大的和第二小的对应. ...

  8. 【Codeforces Round #429 (Div. 2) B】 Godsend

    [Link]:http://codeforces.com/contest/841/problem/B [Description] 两个人轮流对一个数组玩游戏,第一个人可以把连续的一段为奇数的拿走,第二 ...

  9. Codeforces Round #429 (Div. 2) 补题

    A. Generous Kefa 题意:n个气球分给k个人,问每个人能否拿到的气球都不一样 解法:显然当某种气球的个数大于K的话,就GG了. #include <bits/stdc++.h> ...

  10. Codeforces Round #429 Div. 1

    A:甚至连题面都不用仔细看,看一下样例就知道是要把大的和小的配对了. #include<iostream> #include<cstdio> #include<cmath ...

随机推荐

  1. (转)Nginx静态服务配置---详解root和alias指令

    Nginx静态服务配置---详解root和alias指令 原文:https://www.jianshu.com/p/4be0d5882ec5 静态文件 Nginx以其高性能著称,常用与做前端反向代理服 ...

  2. AutoFac之 Named and Keyed 方式注入

    AutoFac是.net framework下一个高效的ioc容器,传说中的效率最快(我偷偷看了几篇测试博文,确实这个容器的效率遥遥领先). 好了废话不多说,AutoFac的使用方式请看:http:/ ...

  3. 成功配置TOMCAT的LOG4J日志系统,格式:HTML+每天以YYYY-MM-DD.LOG命名的日志文件

    关于log4j.properties文件在web项目中放的位置,找过很多,最后实践结果是: 一.web项目 二.放在src的目录里面,然后项目生成后会自动在\WEB-INF\classes文件里有份l ...

  4. Git~GitLab当它是一个源代码管理工具时

    最近开始接触和使用GitLab,用它来做源代码的版本控制,CI.CD持续集成和持续交付,感觉功能确实很强大,今天也只能先说一下它的源代码管理功能,核心就是GIT,对GIT进行了封装,提供了一些扩展功能 ...

  5. 生成正射影像/DSM,等高线提取

    工具:ContextCapture,Globe Mapper 方法/步骤: 1.新建项目,导入影像,提交空三运算 在ContextCapture中新建项目,添加相关影像或视频和其他相关资源,资源,提交 ...

  6. C++程序设计基础(4)宏定义和内联

    1.知识点 1.1宏定义 (1)不带参数的宏定义 #define ERROR_MESSAGE -100 #define SECONDS_PER_DAY 60*60*60 (2)带参数宏定义,这种形式称 ...

  7. 吴恩达《Machine Learning Yearning》总结(1-10章)

    1.为什么选择机器学习策略 案例:建立猫咪图像识别app 系统的优化可以有很多的方向: (1)获取更多的数据集,即更多的图片: (2)收集更多多样数据,如处于不常见的位置的猫的图,颜色奇异的猫的照片等 ...

  8. [转] .net core Session , Working with a distributed cache

    本文转自:https://docs.microsoft.com/en-us/aspnet/core/performance/caching/distributed By Steve Smith+ Di ...

  9. C#请求http向网页发送数据,网页接收

    首先,我们需要的是什么东西? 用POST方式请求http,给网页传输数据,网页接收到数据之后,把数据存储到数据库中. 1.首先请求http,建立连接,把转码过的数据传输过去 2.网页接收数据,在转码之 ...

  10. 在 Visual Studio 中调试 XAML 设计时异常

    在 Visual Studio 中进行 WPF, UWP, Silverlight 开发时,经常会遇到 XAML 设计器由于遭遇异常而无法正常显示设计器视图的情况.很多时候由于最终生成的项目在运行时并 ...