Codeforces 558C - Amr and Chemistry (枚举)

HSCchemistry7.0 HSCchemistry是一款功能非常强大的热力学计算软件,广泛用于化学,化工数据计算 立即下载

枚举每个数乘二和除二过程中所能到达的所有数,并记录到达时的步数,最后统计在所有数都能到达的数字中步数和最小的数字。

因为只有*2和/2的操作,所以往大往小都是log级的。

注意,如果一个数是奇数,那么它本身一直乘二所能到达的数字,和它除2向下取整再一直乘二所能到达的数字是完全不相同的。因为在二进制下除二后相当于左移把末尾的1弄没了,以后再右移时前缀都不一样了。所以在向下除的过程中每次遇到奇数都要处理一下。


代码:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
#define LL long long
int n;
LL c[200005];
int b[200005];
int a[100005];

void up(int n,int k){
    if(!n) return ;
    while(n<=200000){
        b[n]++;
        c[n]+=k;
        k++;
        n<<=1;
    }
}


void solve(int n){
    int cur=0;
    LL num=n*2;
    up(num,1);
    num=n;
    cur=0;
    while(num){
        if(num&1){
            up(num/2*2,cur+2);
        }
        b[num]++;
        c[num]+=cur;
        num>>=1;
        cur++;
    }
}



int main(){
    scanf("%d",&n);
    memset(c,0,sizeof(c));
    for(int i=0;i<n;i++){
        scanf("%d",&a[i]);
        solve(a[i]);
    }
    LL res=1000000000;
    for(int i=0;i<=200000;i++){
        if(b[i]==n){
            res=min(res,c[i]);
        }
    }
    printf("%lld\n",res);
}


Arrow Pushing in Inorganic Chemistry 运用有机化学反应机理研究手法,对无机化学中涉及到的反应进行机理化描述 立即下载

相关推荐

热力学软件HSC

HSC 热力学计算软件,进行热力学计算,包括热平衡,平衡时各物质的平衡浓度等。

全网最全!热化学分析软件Outotec HSC Chemistry详细安装教程(附安装包),以及使用教程!...

✨【元素魔方学术俱乐部】✨????‍????????‍????我们创建了一个学术交流群给全国各地以及各种研究方向的硕博和老师们提供一个交流的平台????????感兴趣的话欢迎加入????本公众号中回复“社群”会自动发送二维码,扫码就能加入啦群内可以交流学术问题????,或者交交朋友要是搞网恋的话我们也不拦你,还会帮你????????!重要提示:如果大家需要下载各种科研软件,学习资源资料等等,关注下方公众号,号内有详细的科研软件安装教程以及使用教程噢~软件资...

元素魔方科研服务 9565

C#粘包和分包问题及解决方法

一:通过图解法来描述一下分包和粘包,这样客户更清晰直观的了解:  下面对上面的图进行解释:  1.正常情况:如果Socket Client 发送的数据包,在Socket Server端也是一个一个完整接收的,那个就不会出现粘包和分包情况,数据正常读取。  2.粘包情况:Socket Client发送的数据包,在客户端发送和服务器接收的情况下都有可能发送,因为客户端发送的数据都是发送的一个缓冲...

weixin_42033401的博客 7767

【CodeForces - 558C】Amr and Chemistry(位运算,bfs,计数,思维,tricks)

题干: Amr loves Chemistry, and specially doing experiments. He is preparing for a new interesting experiment. Amr hasndifferent types of chemicals. Each chemicalihas an initial volume ofailiters....

xuanweiace的博客 730

Unity3d 编译发布到安卓平台时出现的问题集

环境搭建好了,android SDK也有了,但导出的时候提示Error building Player: Win32Exception: ApplicationName='java.exe'....... 国内好像没看到解决方法。在Unity3d的论坛里面看到一个解决方法,把C:\windows\system32\java.exe复制到C:\Windows\SysWOW64里面,我这里就解决

erictang01的专栏 1773

接口调试必看:status显示canceled的3种常见原因及修复方法

本文深度解析了接口调试中status显示canceled的三种核心原因:网络层中断(如请求超时)、应用层逻辑主动取消(如请求竞态、组件卸载)以及用户交互与浏览器行为。文章提供了从诊断到修复的系统性方案,包括分析Network Timing、使用Axios CancelToken、优化请求策略与性能,帮助开发者从根本上解决这一常见问题。

bb456的博客 937

Codeforces 558C Amr and Chemistry(数论+位运算)

题意:给出n个数,让你通过下面两种操作,把它们转换为同一个数。求最少的操作数。 1.ai = ai*2 2.ai = ai/2,向下取整 思路:可以除以二 或者 乘以二,就相当于位运算的右移和左移。用两个数组,vis 数组, cnt 数组。刚开始都初始化为0; vis[i] 表示 i 这个数可以由几个数转化而来,cnt[i] 表示题目给出的 n 个数全部转化为 i 需要的操作数。 首先遍历数组找到 ai 的最大值记为 MAX,那么所有数转化的上界就是 MAX,因为如果最终转化的数如果大于MAX,那

晚风中的自由 1487

【YOLOv11多模态涨点改进】独家创新首发| TGRS 2026 |引入 CIFusion 通道交互融合模块,通过跨特征交互机制强化目标区域响应,适合多模态融合目标检测,小目标检测高效涨点

🔥本文提出了一种改进YOLOv11多模态目标检测模型的方法,通过引入CIFusion通道交互融合模块来提升RGB与红外特征融合效果。CIF模块采用通道级自适应交互机制,根据全局上下文动态分配不同模态通道的重要性,实现跨模态特征交互与互补信息融合。相比传统拼接或加权融合方式,CIF能够增强目标区域响应,抑制背景噪声,提高小目标和低对比度目标的检测性能。实验表明,该方法在DroneVehicle等数据集上显著提升了检测精度。论文还详细介绍了CIF模块的结构原理、实现代码及模型配置方法。

Ai缝合怪、助力小伙伴高效发论文 187

Codeforces 558(C、D、E)总结

Codeforces 558(C、D、E)总结 —— black的专栏 —— waShaXiu

black的专栏 1403

ABAP Channels 实战:在 ABAP 7.40 中用 WebSocket 打造实时双向通信

本文详细介绍了SAP ABAP 7.40引入的ABAP Channels通信框架,包含AMC(ABAP Messaging Channels)和APC(ABAP Push Channels)两部分。AMC作为应用服务器内部的消息总线,支持发布/订阅模式,可实现跨会话实时通信;APC基于WebSocket协议,用于浏览器等客户端与ABAP服务器的双向实时交互。文章通过一个乒乓球游戏案例展示了ABAP Channels的实时协作能力,并详细解析了AMC的配置方法、消息发送与接收的代码实现,帮助开发者理解如何利用

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 223

RTDETR最强结构图 | 包含模型整体结构图 | 全模块展开图 | AiFi模块展开图

RT-DETR 最全结构图

Coding... 9599

CodeForces 558C Amr and Chemistry (位运算,数论,规律,枚举)

Codeforces 558C 题意:给n个数字,对每个数字可以进行两种操作:num*2与num/2(向下取整),求:让n个数相等最少需要操作多少次。 分析: 计算每个数的二进制公共前缀. 枚举法亦可。 /* *Author : Flint_x *Created Time : 2015-07-22 12:33:11 *File name : whust2_L.cpp */ #

a novice 1213

芒果YOLOv8改进52:主干Backbone篇之GhostNetV2:提出原创GhostNetV2 架构升级版:引入长距离注意力机制增强廉价操作,构建更强端侧轻量型骨干,打造高效轻量级检测器

长距离注意力机制增强廉价操作,打造轻量级检测器

包括YOLOv5、YOLOv7、YOLOv8等模型改进 1612

C-CodeForces558C- Amr and Chemistry

题目链接:codeforces558C 位运算,加暴力,将每个数乘除所得数求出来,当所有数枚举到n,并且步数最小即可。 注意:   当a为奇数时,a除以2,再乘以2,得不到a,所以此时a向下遍历(除以2)时,所得数向上遍历会得到新的数,那么在a向下遍历时,若得到的数是奇数,则对该数进行一次向上遍历的操作。(该过程为代码中开始结束部分) #define _CRT_SECURE_NO_DEPR

caozhecs的博客 421

复现论文《基于Retinex理论和深度学习的低照度图像增强算法研究》

本研究提出两种基于Retinex理论和深度学习的低照度图像增强算法。第一种算法在HSV色彩空间中进行处理,采用Res2Block和CBAM-Res2block模块增强多尺度特征表示;第二种算法使用多尺度残差U型网络结构。复现代码展示了Res2Block、CBAM注意力机制等核心模块的实现,包括多尺度特征提取、通道和空间注意力机制。实验结果表明,所提算法能有效解决低照度图像存在的亮度低、对比度不足、颜色失真和细节丢失等问题,显著提升图像质量。

max500600的博客 389

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Codeforces 558C Amr and Chemistry

Amr loves Chemistry, and specially doing experiments. He is preparing for a new interesting experiment.Amr has n different types of chemicals. Each chemical i has an initial volume of ai liters. For th

XDU_PYL的博客 898

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Codeforces 558C. Amr and Chemistry(暴搞)

Amr loves Chemistry, and specially doing experiments. He is preparing for a new interesting experiment. Amr has n different types of chemicals. Each chemical i has an initial volume of ai liters.

ZAQ的博客 1331

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Amr and Chemistry CodeForces - 558C

Amr loves Chemistry, and specially doing experiments. He is preparing for a new interesting experiment. Amr hasndifferent types of chemicals. Each chemicalihas an initial volume ofailiters. For ...

why932346109的博客 353

【23.39%】【codeforces 558C】Amr and Chemistry

time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard output Amr loves Chemistry, and specially doing experiments. He is preparing for a n...

AWCXV 223

Codeforces 558 C. Amr and Chemistry

给出\(n\)个数\(a_i\),每个数可以进行任意次乘2或除2(向下取整)的操作,问总共最少进行多少次操作能够让所有数相等。(\(1 \leq n,a_i \leq 10^5\)) 解题思路 我们可以考虑维护出每一个数对应的所有变换状态,最后对所有数的变换状态求一个交集。枚举交集内的每个元素,一一带回去求最小值。 然而一个数可以除完再乘,也就是说一个数最多可以对应\(\log^2 n\)个...

weixin_30640291的博客 164

【Codeforces 558C】Amr and Chemistry (二进制)

Amr and Chemistry (枚举&二进制) 时间 : 2019年03月25日 作者 : 数字_ID 题意 给你一些数,你只能 ∗2* 2∗2 或者÷2\div2÷2(向下取整),让你用最小的次数实现让每个数都相等,并输出最小次数 题解 首先把所有数全部左移到最高 通过同或得到公共的01串 枚举这个01串后面0的个数的所有可能,暴力地去计算所有代价 代码 #include...

IuMgXnWu 358

Codeforces 558C Amr and Chemistry 位操作

刚刚FST掉,好明显的错误居然过了60+组。。 题意: 给你n个数,让你通过下面两种操作,把它们转换为同一个数。求最少的操作数。 1.ai = ai*2 2.ai = ai/2,向下取整 思路: 看到乘2,除2是不是应该有点感觉。对,就是位的左右移位。 因为ai 对于ai,我们处理出它转换到所有其它数的最少操作数。 处理过程: 一开始ai,首先先执行右移,直到1e5

758

cf#312-C - Amr and Chemistry-枚举

http://codeforces.com/contest/558/problem/C 每次操作  把a[i] ,/2取整或者X2,求min操作次数 使得所有的数一样 n和数的最大值 都是 1e5 这里 暴力枚举一下每个数字的情况即可 开一个vis[] 对于一个数x,每次/2都 做一轮 【 不断*2的操作 ,  对于每次得到的一个数,vis[y]++,并且 step[

缺氧 934
上一篇: Codeforces 559C Gerald and Giant Chess(DP+乘法逆元求大组合数)
下一篇: Codeforces 558D - Guess Your Way Out! II (求区间交,并)
Baoli1008
博客等级 码龄12年 70粉丝 293原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值