第一次参加cf的比赛 有点小幸运也有点小遗憾
给自己定个小目标 1500【对啊我就是很菜qvq

A. The Rank

难度:普及-

n位学生 每个学生有四个分数
然鹅我们只需要知道他的分数和
按分数和递减排名 同分的按编号递增排名
现在小Smith的id是1号 求他的成绩排名

解 : 不用说了吧。。暴力排序就行

B. The Bits

有两个n位二进制数A和B
现在可以选择A的两位交换
交换后的数为C
求问有多少种交换方式
使得 A | B != C | B

解 : 每一位的A 和 B 可能有如下四种对应方式
A B
0 0
0 1
1 0
1 1

第2、4种情况无论A那一位是什么最后的和都不变
第一种换成 1 会变 第三种换成0会变

那么交换方式就有
1 <=> 3 1 <=> 4 2 <=> 3
三种交换方式

只要在输入时统计每种对应有多少组 相乘即可

C. The Phone Number

求长度为n的排列
使得该排列LIS(最长上升子序列)与LDS(最长下降子序列)的长度和最小

我太菜了并不会证
但按照sqrt(n) 分组是最小的

D. The Wu

一个假项链【蒟蒻到现在都没读懂这题跟项链有什么关系。。。
总之啦 有n, m, q (n ∈ [1, 12] m, q∈[1, 5e5])
二进制从左到右的第i位有w[i]的价值
给出m个n位二进制数 再给出q个询问
每个询问有一个n位二进制数A 和一个限定值v

对于两个二进制数 如果它们的第i位相等 那么这一位获得w[i]的贡献
否则没有贡献

对于一个询问 A与原来的m个二进制数每个都有一个总贡献
输出总贡献不大于v的个数

这道题完全凭直觉乱搞?!
2 ^ 12 = 4096 这很状压
所以我们与处理出所有可能的总价值
这里用100011表示 ** 仅取w[2] w[3] w[4] **
也就是0表示取 1表示不取
这么做是为了利用抑或的特性 即0抑或一个数等于它自己
预处理 cnt[i] = x; 表示二进制数i代表的总贡献是x
对于给出的A 与其总贡献为x的二进制数是A ^ i
把询问按A排序 把cnt按x值排序
再预处理出m个二进制数每种出现了多少个
离线处理就行了
复杂度O(2 ^ 2n)

Codeforces Round #502 (in memory of Leopoldo Taravilse, Div. 1 + Div. 2)的更多相关文章

  1. E. The Supersonic Rocket Codeforces Round #502 (in memory of Leopoldo Taravilse, Div. 1 + Div. 2)

    http://codeforces.com/contest/1017/problem/E 凸包模板+kmp #include <cstdio> #include <cstdlib&g ...

  2. Codeforces Round #502 (in memory of Leopoldo Taravilse, Div. 1 + Div. 2) G. The Tree

    G. The Tree time limit per test 3 seconds memory limit per test 256 megabytes input standard input o ...

  3. Codeforces Round #502 (in memory of Leopoldo Taravilse, Div. 1 + Div. 2) E. The Supersonic Rocket

    这道题比赛之后被重新加了几个case,很多人现在都过不了了 算法就是先求凸包,然后判断两个凸包相等 我们可以吧凸包序列化为两点距离和角度 角度如果直接拿向量的叉积是不对的,,因为钝角和锐角的叉积有可能 ...

  4. 【Codeforces Round #502 (in memory of Leopoldo Taravilse, Div. 1 + Div. 2) D】The Wu

    [链接] 我是链接,点我呀:) [题意] 给你n个字符串放在multiset中. 这些字符串都是长度为m的01串. 然后给你q个询问 s,k 问你set中存在多少个字符串t 使得∑(t[i]==s[i ...

  5. Codeforces Round #502

    Codeforces Round #502 C. The Phone Number 题目描述:求一个\(n\)排列,满足\(LIS+LDS\)最小 solution 枚举\(LIS\),可证明\(LD ...

  6. 【Codeforces Round #502 (Div. 1 + Div. 2) 】

    A:https://www.cnblogs.com/myx12345/p/9843032.html B:https://www.cnblogs.com/myx12345/p/9843050.html ...

  7. Codeforces Round #195 A B C 三题合集 (Div. 2)

    A 题 Vasily the Bear and Triangle 题目大意 一个等腰直角三角形 ABC,角 ACB 是直角,AC=BC,点 C 在原点,让确定 A 和 B 的坐标,使得三角形包含一个矩 ...

  8. cf之路,1,Codeforces Round #345 (Div. 2)

     cf之路,1,Codeforces Round #345 (Div. 2) ps:昨天第一次参加cf比赛,比赛之前为了熟悉下cf比赛题目的难度.所以做了round#345连试试水的深浅.....   ...

  9. Codeforces Round #262 (Div. 2) 1003

    Codeforces Round #262 (Div. 2) 1003 C. Present time limit per test 2 seconds memory limit per test 2 ...

随机推荐

  1. python获取当前日期时间

    转载自:https://www.cnblogs.com/wenBlog/p/6023742.html 在Python里如何获取当前的日期和时间呢?在Python语言里,我们可以通过调用什么模块或者类函 ...

  2. Mike and gcd problem CodeForces - 798C (贪心思维+数论)

    题目链接 比较棒的一道题, 题意: 给你一个N个数的数组,让你用尽量少的操作使整个数组的gcd大于1,即gcd(a1 ,a2,,,,an) > 1 如果可以输出YES和最小的次数,否则输出NO ...

  3. Winform MDI窗体切换不闪烁的解决办法(测试通过)

    https://stackoverflow.com/questions/5817632/beginupdate-endupdate-for-datagridview-request SuspendLa ...

  4. Day2 Numerical simulation of optical wave propagation之标量衍射理论基本原理(二)

    2.麦克斯韦方程组的简单行波解 讨论通过线性.各向同性.均匀.无色散.无限电荷和电流的电介质材料的光波传输.在这种情况下,介质具有如下属性: (1)推导获得波动方程( 由麦克斯韦方程组导出的.描述电磁 ...

  5. Beta阶段冲刺汇总(团队)

    写在前面 汇总成绩排名链接 1.作业链接 第十一次作业--项目Beta冲刺(团队) 2.评分准则 本次作业包括现场Beta答辩评分(映射总分为100分)+博客分(总分120分)+贡献度得分,其中博客分 ...

  6. MongoDB——待整理

    MongoDB mongoose——http://mongoosejs.com/ npm i mongoose Mongoose 通过外键与另一张表建立关联:Mongoose Populate 基本使 ...

  7. node exprss-session 和connect-mongo

    let express = require('express'); let session = require('express-session'); let app = new express(); ...

  8. Bootstrap知识记录:表单和图片

    一.表单Bootstrap 提供了一些丰富的表单样式供开发者使用.1.基本格式//实现基本的表单样式<form><div class="form-group"&g ...

  9. Oracle 不小心删除undo数据文件以及磁盘空间不足导致不能登录的解决办法

    在一次测试中,由于导入的数据量过大导致事务一直提交失败因为磁盘空间不够用了,一检查发现是undo表空间不够用,于是重新创建了一个表空间,准备把之前的undo表空间删除,删除时却发现一直删不掉,因为它一 ...

  10. Oracle 备份表数据

    --备份表数据 select * from t_owners; --创建备份表 create table t_owners_copy ( id number, name ), addressid nu ...