首页 > 其他分享 >CF467B Fedor and New Game

CF467B Fedor and New Game

时间:2023-11-14 13:22:54浏览次数:39  
标签:__ CF467B 题意 int 个数 异或 Game Fedor New

前言

传送门

本题思维难度:橙。

本题代码难度:橙或红。

综合难度:橙。

本人代码码量位居第二,但是呢,我的空格多,所以,还不来看一下?

题意

根据题目,若两人一人有 $j$,一人没 $j$,则异或后,第 $j$ 位为 $1$。

那么,题目转化为:已知有 $m + 1$ 个数,求出满足 $a_i$ 异或 $a_{m + 1}$ 结果的 $1$ 的个数小于等于 $k$ 这样的 $i$ 的个数。其中 $1 \le i < m + 1$。

分析

题意转化的差不多了。简单模拟即可。

我们并不需要使用 std::bitset

这里,我们引入一个函数 __builtin_popcount(),可以计算一个整数二进制下有多少个 $1$。

Code

#include <bits/stdc++.h>
using namespace std;

const int N = 5005;
int n, m, k, a[N], ans;

int main() {
	cin >> n >> m >> k;
	m++;
	for (int i = 1; i <= m; i++) cin >> a[i];
	for (int i = 1; i < m; i++) 
		if (__builtin_popcount(a[i] ^ a[m]) <= k)
			ans++;
	cout << ans;
	return 0;
}

标签:__,CF467B,题意,int,个数,异或,Game,Fedor,New
From: https://www.cnblogs.com/luckycloud/p/17831385.html

相关文章

  • WordPress主题 JustNews主题6.0.1(亲测首页不空白)
    介绍资源入口需要用WordPress5.X版本JustNews介绍:一款专为博客、自媒体、资讯类的网站设计开发的WordPress主题,自v3.0版开始支持自主研发的前端用户中心,不仅支持注册、登录、账户设置、个人中心等常用页面的添加,还可以上传头像、设置用户分组等等!更新介绍JustNews主题更新......
  • Golang中如何使用new函数创建一个结构体对象?
    在Go语言中,可以使用new函数创建一个结构体对象的指针。下面是使用new函数创建结构体对象的示例:typePersonstruct{NamestringAgeint}funcmain(){//使用new函数创建一个Person结构体对象的指针p:=new(Person)//设置结构体对象的字段值......
  • 开发知识点-Pygame
    PygamePygame最小开发框架与最小游戏游戏开发入门单元开篇Pygame简介安装游戏开发入门语言开发工具的选择Pygame最小开发框架与最小游戏游戏开发入门单元开篇Pygame简介安装游戏开发入门语言开发工具的选择......
  • JVM 里 new 对象时,堆会发生抢占吗?JVM是怎么设计来保证 线程安全的?
    会。假设JVM虚拟机上,每一次new对象时,指针就会向右移动一个对象size的距离,一个线程正在给A对象分配内存,指针还没来得及修改,另一个为对象B分配内存的线程又引用了这个指针来分配内存,这就发生了抢占。有两种方案来解决这个问题:1、CAS采用CAS分配重试的方式来保证更新操作的原子性2、TL......
  • 【pwn】[HGAME 2023 week1]choose_the_seat --数组越界,劫持got表
    查一下程序保护情况发现是partialrelro,说明got表是可以修改的,下一步看代码逻辑看到这一段puts(&seats[16*v0]);存在数组越界的漏洞,因为上面的代码没有对v0进行负数的限制,v0可以是负数,我们来看一下seat的数据可以发现seat上面的数据就是got表,seat到exit的距离只需要传入......
  • os: fedora39 -- 配置和常用脚本
    os: fedora39--配置和常用脚本    一、fedora39-基本配置信息1[laohu@fedora~/user/lidawei/tmp/null]$cat~/.bashrc2#.bashrc34#Sourceglobaldefinitions5if[-f/etc/bashrc];then6./etc/bashrc7fi89#Userspecifi......
  • vue的虚拟dom渲染真实dom的过程中首先会对新老VNode的开始和结束位置进行标记:oldStart
    关于Vue中的diff算法说法错误的是()A比较只会在同层级节点进行比较,不会跨层级比较B在diff比较的过程中,循环从两边向中间收拢。Cvue的虚拟dom渲染真实dom的过程中首先会对新老VNode的开始和结束位置进行标记:oldStartIdx、oldEndIdx、newStartIdx、newEndIdxD当老VNode节......
  • Newtonsoft.Json 入门介绍
    本人是C#小白,这里摘抄并整理了两位大神的文章:Newtonsoft.Json笔记-JToken、JObject、JArray详解Json基于类Newtonsoft.Json.Linq.JToken的应用简介 简单介绍如何使用Newtonsoft.Json类库和操作Json对象,这里主要介绍LinqtoJson类。Newtonsoft.Json封装类实现了JToken,直......
  • Fedora 安装 build-essential
    .....在Ubuntu系统中安装build-essential包就可以一键安装常用的编译工具链,但是在Fedora系统中没有这个包。在Fedora系统里面,这个包变成了一个名字为“DevelopmentTools”的组,所以安装命令如下:>$sudodnfgroupinstall"DevelopmentTools" ......
  • 解决 Fedora Live-CD 启动时出现 Invalid image 的问题
    .....安装Fedora39的时候,Live-CD启动报如下错误:InvalidimageFailedtoreadheader:UnsupportedFailedtoloadimage:Unsupportedstart_image()returnedUnsupported尝试了各种解决办法未果,后来在Fedora论坛上发现有人在Fedora37时遇到过同样的问题。......