2017多校5 1011 Rikka with Competition

2024-04-01 19:08

本文主要是介绍2017多校5 1011 Rikka with Competition,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

http://acm.hdu.edu.cn/showproblem.php?pid=6095



给出n个人的力量值,再给一个k,进行n-1次挑选,每次挑选2个人比拼,相差大于k的大者赢,小者淘汰。小于k则当做没发过。问最后有多少人能有机会不会被淘汰。

因为是n-1次所以最坏情况只剩下一个人,那么意味着如果最后剩下一些人,那么可以得到的就是这些剩下的人里最大与最小不会超过k,那么就可以对这些数字排序,然后从大到小去比较,一旦找到一个位置,这两个人相差大于k,则跳出,那么前面的人数则为答案。



#include <bits/stdc++.h>
using namespace std;
#define ma(a) memset((a),0,sizeof((a)))
const int MOD=1000000;long long int a[111111];
int main(){
int t;
cin>>t;while(t--){int num;long long int k;scanf("%d%lld",&num,&k);int i,j;for(i=0;i<num;i++)scanf("%lld",&a[i]);long long int ans=0;sort(a,a+num);int js=0;;i=num-2;long long int maxx=a[num-1];while(i>=0){if(maxx-a[i]>k){i--;js++;}else {maxx=a[i];i--;}}ans=num-js;cout<<ans<<endl;}return 0;
}


这篇关于2017多校5 1011 Rikka with Competition的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/867922

相关文章

2015多校联合训练第三场Work(hdu5326)

题意: a是b的上司,b是c的上司,则a是c的上司,问构成一个树种,有多人是 k个人的上司 思路: 先找出root,然后dfs一下就行 #include <bits/stdc++.h>#define LL long longusing namespace std;const int MAXN = 1e6;int f[105];int n, k;int mp[101][101];

2015年多校联合训练第三场RGCDQ(hdu5317)

题意: f(i)代表i数中有的素数的种数,给出区间[l,r],求区间内max(gcd(f(i))), 由于i最大是1e6,2*3*5*7*11*13*17>1e6,故最多不超过7种素数, 先打表打出1e6内的素数种数表,然后用sum[i][j]代表1-i个数中,还有j个素数的个数,最后用sum[r][j] - sum[l-1][j]求出区间内含有j个素数的数的个数,暴力找出1,2,3,4,5

2015多校联合训练第一场Tricks Device(hdu5294)

题意:给一个无向图,给起点s,终点t,求最少拆掉几条边使得s到不了t,最多拆几条边使得s能到t 思路: 先跑一边最短路,记录最短路中最短的边数,总边数-最短边数就是第二个答案 第一个答案就是在最短路里面求最小割,也就是求最大流,然后根据最短路在建个新图,权为1,跑一边网络流 模板题,以后就用这套模板了 #include <iostream>#include <cstdio>#incl

2015多校联合训练第一场Assignment(hdu5289)三种解法

题目大意:给出一个数列,问其中存在多少连续子序列,子序列的最大值-最小值< k 这题有三种解法: 1:单调队列,时间复杂度O(n) 2:RMQ+二分,时间复杂度O(nlogn) 3:RMQ+贪心,时间复杂度O(nlogn) 一:RMQ+二分 RMQ维护最大值,最小值,枚举左端点i,二分找出最远的符合的右端点j,答案就是ans += j - i+1;(手推一下就知道) 比如1 2 3

2015年多校联合训练第一场OO’s Sequence(hdu5288)

题意:给定一个长度为n的序列,规定f(l,r)是对于l,r范围内的某个数字a[i],都不能找到一个对应的j使得a[i]%a[j]=0,那么l,r内有多少个i,f(l,r)就是几。问所有f(l,r)的总和是多少。 公式中给出的区间,也就是所有存在的区间。 思路:直接枚举每一个数字,对于这个数字,如果这个数字是合法的i,那么向左能扩展的最大长度是多少,向右能扩展的最大长度是多少,那么i为合法的情况

2017 版本的 WebStorm 永久破解

1.  在IntelliJ官网中下载 最新版本的WebStorm   下载地址:https://www.jetbrains.com/webstorm/download/#section=windows 2. 获取注册码    获取地址:http://idea.lanyus.com/   点击获取注册码,然后将注册码复制,再打开最新版的WebStorm,将注册码粘贴到激活框中就大功告

PAT (Advanced Level) Practice——1011,1012

1011:  链接: 1011 World Cup Betting - PAT (Advanced Level) Practice (pintia.cn) 题意及解题思路: 简单来说就是给你3行数字,每一行都是按照W,T,L的顺序给出相应的赔率。我们需要找到每一行的W,T,L当中最大的一个数,累乘的结果再乘以0.65,按照例子写出表达式即可。 同时还需要记录每一次选择的是W,T还是L

2014多校联赛总结

转眼间2014年暑期多校联赛已经落下帷幕,下面是关于暑期比赛的一些总结. 题型统计: 2014 Multi-University Training Contest 1--by FZU A:数学(费马小定理) B:网络流(最小K路径覆盖) C:树形dp(树的重心+数据结构) D:贪心 (巧妙) E:数学+dp(隐含马尔科夫模型) F:线段树(函数式+二分) G:线段树+状态压

【HDU】5426 Rikka with Game【DP】

题目链接:【HDU】5426 Rikka with Game #include <bits/stdc++.h>using namespace std ;typedef long long LL ;#define clr( a , x ) memset ( a , x , sizeof a )const int MAXN = 100005 ;const int MAXE = 200005 ;

2014多校联合十(HDU 4972 HDU 4973 HDU 4974 HDU 4975)

HDU 4972 A simple dynamic programming problem 题意:篮球比赛有1、2、3分球  现给出两队的分差序列(5:3 分差2  3:5分差也是2)  问有多少种可能的比分 思路: 比较简单的想法题  可以类一张表“从分差x到分差y一共有几种情况”  很容易发现只有1->2和2->1的时候会多一种情况  其他均是一种  所以只需要统计这种特殊分差即可  注