题目链接: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的更多相关文章

  1. 2019杭电多校第七场 HDU - 6656 Kejin Player——概率&&期望

    题意 总共有 $n$ 层楼,在第 $i$ 层花费 $a_i$ 的代价,有 $pi$ 的概率到 $i+1$ 层,否则到 $x_i$($x_i \leq 1$) 层.接下来有 $q$ 次询问,每次询问 $ ...

  2. [2019杭电多校第七场][hdu6656]Kejin Player

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6656 题意为从i级花费a元有p的概率升到i+1级,有1-p的概率降到x级(x<i),查询从L级升 ...

  3. [2019杭电多校第七场][hdu6651]Final Exam

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6651 题意:n个科目,总共m分,通过一科需要复习花费科目分数+1分钟,在不知道科目分数的情况下,问最少 ...

  4. [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+ ...

  5. 杭电多校第七场 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 ...

  6. 杭电多校第七场-J-Sequence

    题目描述 Let us define a sequence as belowYour job is simple, for each task, you should output Fn module ...

  7. hdu61272017杭电多校第七场1008Hard challenge

    Hard challenge Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 524288/524288 K (Java/Others) ...

  8. 2017杭电多校第七场1011Kolakoski

    Kolakoski Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 524288/524288 K (Java/Others) Tota ...

  9. 2017杭电多校第七场1005Euler theorem

    Euler theorem Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 524288/524288 K (Java/Others) ...

随机推荐

  1. spring jpa 带参数分页查询(一)

    1.写个接口继承JpaRepository @NoRepositoryBean public interface BaseRepository<T,PK extends Serializable ...

  2. BZOJ1896 Equations 线性规划+半平面交+三分

    题意简述 给你\(3\)个数组\(a_i\),\(b_i\)和\(c_i\),让你维护一个数组\(x_i\),共\(m\)组询问,每次给定两个数\(s\),\(t\),使得 \[ \sum_i a_i ...

  3. BSOJ5458 [NOI2018模拟5]三角剖分Bsh 分治最短路

    题意简述 给定一个正\(n\)边形及其三角剖分,每条边的长度为\(1\),给你\(q\)组询问,每次询问给定两个点\(x_i\)至\(y_i\)的最短距离. 做法 显然正多边形的三角剖分是一个平面图, ...

  4. LeetCode--094--二叉树的中序遍历(python)

    递归 # Definition for a binary tree node. # class TreeNode: # def __init__(self, x): # self.val = x # ...

  5. mysql 语句积累

    show tables; 显示表 DROP TABLE IF EXISTS emp;删除表

  6. adb打开系统设置的命令

    adb命令打开手机设置页面 设置主页面adb shell am start com.android.settings/com.android.settings.Settings 安全adb shell ...

  7. <知识整理>2019清北学堂提高储备D4

    今天主要讲一下数学的知识. 一.进制转换: 十进制到k进制:短除法:顺除至0,逆序取余. k进制转十进制:乘权相加. 常见进制:四进制(对应2位二进制).八进制(对应3位二进制).十六进制(对应4位二 ...

  8. opencv_python_基本图像处理

    https://www.e-learn.cn/content/python/2694135 https://blog.csdn.net/Eastmount/article/details/817488 ...

  9. APIO2019解题报告

    「APIO 2019」奇怪装置 题目描述 有无限个二元组,每个二元组为\(((t+\left\lfloor\frac{t}{B} \right\rfloor)\%A,t \% B)\),给出一些区间, ...

  10. [CF1082G]Petya and Graph:最小割

    分析 发这篇博客的目的就是要让你们知道博主到底有多菜. 类似于[NOI2006]最大获利.(明明就是一模一样好吧!) 不知道怎么了,半秒就想到用网络流,却没想出怎么建图. 连这么简单的题都没做出来,我 ...