[2019杭电多校第七场][hdu6655]Just Repeat
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6655
题意是说两个人都有一些带有颜色的牌,两人轮流出牌,但是不能出对面出过的颜色的牌,最后谁不能出牌谁输。
贪心的想,如果这种牌我有对方也有,那我肯定先出以此来减少对方可出的牌,如果有几种这样的牌,那肯定是先出两方手牌总和最多的那种颜色。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<algorithm>
#include<vector>
#include<map>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
const int maxn = 2e5 + ;
struct node {
ll id, num;
node() {}
node(ll _id, ll _num) { id = _id, num = _num; }
}q[maxn];
int a[maxn], b[maxn], num[maxn], numa[maxn], numb[maxn];
ull k1, k2;
int mod;
ull rng() {
unsigned long long k3 = k1, k4 = k2;
k1 = k4;
k3 ^= k3 << ;
k2 = k3 ^ k4 ^ (k3 >> ) ^ (k4 >> );
return k2 + k4;
}
bool cmp(node a, node b) {
return a.num > b.num;
}
int main() {
int t;
scanf("%d", &t);
while (t--) {
int n, m, p, len = , cnt = ;
scanf("%d%d%d", &n, &m, &p);
if (p == ) {
for (int i = ; i <= n; i++)
scanf("%d", &a[i]), num[++len] = a[i];
for (int i = ; i <= m; i++)
scanf("%d", &b[i]), num[++len] = b[i];
}
else {
scanf("%llu%llu%d", &k1, &k2, &mod);
for (int i = ; i <= n; i++)
a[i] = (int)(rng() % mod), num[++len] = a[i];
scanf("%llu%llu%d", &k1, &k2, &mod);
for (int i = ; i <= m; i++)
b[i] = (int)(rng() % mod), num[++len] = b[i];
}
sort(num + , num + + len);
len = unique(num + , num + + len) - num - ;
for (int i = ; i <= len; i++)
numa[i] = numb[i] = ;
for (int i = ; i <= n; i++) {
int x = lower_bound(num + , num + + len, a[i]) - num;
numa[x]++;
}
for (int i = ; i <= m; i++) {
int x = lower_bound(num + , num + + len, b[i]) - num;
numb[x]++;
}
for (int i = ; i <= len; i++) {
if (numa[i] && numb[i])
q[++cnt] = node(i, numa[i] + numb[i]);
}
sort(q + , q + + cnt, cmp);
int w = , suma = n, sumb = m;
for (int i = ; i <= cnt; i++) {
if (w & )
suma--, sumb -= numb[q[i].id];
else
sumb--, suma -= numa[q[i].id];
w++;
}
if (w & ) {
if (suma > sumb)
printf("Cuber QQ\n");
else
printf("Quber CC\n"); }
else {
if (sumb > suma)
printf("Quber CC\n");
else
printf("Cuber QQ\n"); }
}
}
[2019杭电多校第七场][hdu6655]Just Repeat的更多相关文章
- 2019杭电多校第七场 HDU - 6656 Kejin Player——概率&&期望
题意 总共有 $n$ 层楼,在第 $i$ 层花费 $a_i$ 的代价,有 $pi$ 的概率到 $i+1$ 层,否则到 $x_i$($x_i \leq 1$) 层.接下来有 $q$ 次询问,每次询问 $ ...
- [2019杭电多校第七场][hdu6656]Kejin Player
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6656 题意为从i级花费a元有p的概率升到i+1级,有1-p的概率降到x级(x<i),查询从L级升 ...
- [2019杭电多校第七场][hdu6651]Final Exam
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6651 题意:n个科目,总共m分,通过一科需要复习花费科目分数+1分钟,在不知道科目分数的情况下,问最少 ...
- [2019杭电多校第七场][hdu6646]A + B = C(hash)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6646 题意为求a*10x+b*10y=c*10z满足公式的任意一组解x,y,z. 因为c有可能会由a+ ...
- 杭电多校第七场 1010 Sequence(除法分块+矩阵快速幂)
Sequence Problem Description Let us define a sequence as below f1=A f2=B fn=C*fn-2+D*fn-1+[p/n] Your ...
- 杭电多校第七场-J-Sequence
题目描述 Let us define a sequence as belowYour job is simple, for each task, you should output Fn module ...
- hdu61272017杭电多校第七场1008Hard challenge
Hard challenge Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others) ...
- 2017杭电多校第七场1011Kolakoski
Kolakoski Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others) Tota ...
- 2017杭电多校第七场1005Euler theorem
Euler theorem Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others) ...
随机推荐
- Python---进阶---文件操作---获取文件夹下所有文件的数量和大小
一.####编写一个程序,统计当前目录下每个文件类型的文件数 ####思路: - 打开当前的文件夹 - 获取到当前文件夹下面所有的文件 - 处理我们当前的文件夹下面可能有文件夹的情况(也打印出来) - ...
- 【leetcode】Decode Ways
题目如下: 解题思路:这个题目的本质是一个爬楼梯问题,在爬楼梯问题中,每次可以选择走一步或者两步.而本题也是一样的,解码的时候选择解码一个字符或者两个字符,但是加大了一点点难度,要考虑这些情况.1,Z ...
- 奇偶选择器:使用odd和even属性实现表格单双行颜色相间和不同
一.奇偶选择器 表格在呈现数据的时候我们为了方便观看,而隔行显示不同的颜色,虽然可以用用类选择器 class实现这种效果,但是未免太过麻烦,为了更加简便地表现这种特殊的效果我们需要用到一种特殊的选择器 ...
- ExtJS用Grid显示数据后如何自动选取第一条记录
用Grid显示数据后,如何让系统自动选取第一条记录呢?在显示Grid时由于其Store正在loading,没法在Grid选取第一条记录,因为还没有记录,所以应在其Store进行操作. 查看Ext.da ...
- 浙大PAT CCCC L3-015 球队“食物链” ( 搜索 && 剪枝 )
题目链接 题意 : 有 n 个球队,给出主客场胜负图,找出一个序列 1.2.3..... 使得 1 战胜过 2 .2 战胜过 3.3 战胜过 4..... n 战胜过 1 ( 这个序列是 1~n 的其 ...
- 2017南宁网络赛 Problem J Minimum Distance in a Star Graph ( 模拟 )
题意 : 乱七八糟说了一大堆,实际上就是问你从一个序列到另个序列最少经过多少步的变化,每一次变化只能取序列的任意一个元素去和首元素互换 分析 : 由于只能和第一个元素去互换这种操作,所以没啥最优的特别 ...
- [luogu]P1066 2^k进制数[数学][递推][高精度]
[luogu]P1066 2^k进制数 题目描述 设r是个2^k 进制数,并满足以下条件: (1)r至少是个2位的2^k 进制数. (2)作为2^k 进制数,除最后一位外,r的每一位严格小于它右边相邻 ...
- 【bzoj4136】[FJOI2015]带子串包含约束LCS问题
题目描述: 带有子串包含约束的最长公共子序列问题可以具体表述如下. 给定2个长度分别为n和m的序列X和Y,以及一个子串包含约束集S. S中共有k个字符串S={S1,S2,…,Sk},其中字符串Si的长 ...
- 安装memcached和elasticsearch服务并systemctl管理
[root@izbp18dv3a3metugyd02qxz bin]# rpm -qa | grep memcache [root@izbp18dv3a3metugyd02qxz bin]# yum ...
- es之Source字段和store字段
PUT /website/blog/ { "title" : "elasticsearchshi是是什么", "author" : &quo ...