西安电子科技大学第16届程序设计竞赛G题
链接: https://www.nowcoder.com/acm/contest/107/G
来源:牛客网
题目描述
众所周知,汀老师是XDUACM实验室最优秀的人,无论是学习还是打游戏。今天他突然想到一个好玩的游戏。规则是这样的,在游戏中他要得到n个小国,初始的时候小国和小杰各有1个。经过了很久的修炼,汀老师学会了两种魔法,他每次可以动用自己的智慧来使用魔法。
第一个魔法:(小杰变小国)可以将自己的智慧复制和当前小杰一样数量的小国出来;
第二个魔法:(小国大爆发)可以将当前的小杰变成和小国的数量一样,然后小国的数量加倍!
因为汀老师的智力是无限多的,他不关心花掉的智力大小。但是好学的汀老师想尽快得到n个小国,使得能有更多的时间去读paper和打比赛。他想问问你,最少需要使用多少次魔法可以得到n个小国。
得到了n个小国后,汀老师去学习,但是小国们基因突变在电脑里越来越多!他们来组织汀老师学习,现在告诉汀老师我要得到更多的同伴!
输入描述:
多组数据,第一行一个正整数T(T<=100000)表示数据组数。 接下来T行,每行一个正整数n(n<=10^6)。
输出描述:
对于每组数据输出一个整数,表示得到n个小国汀老师最少需要使用多少次膜法。
输入
2 1 3
输出
0 2
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int vis[1000010];
long long Ans=0;
inline void dfs(int x,int now,int sum) {if(x==1) {Ans+=sum*(now-1);return;}if(vis[x]!=now) {Ans+=sum*(now-1);dfs(x/vis[x],vis[x],1);}elsedfs(x/vis[x],now,sum+1);
}
int main() {memset(vis,0x3f,sizeof vis);vis[1]=1;for(int i=2;i<=1e6;++i)if(vis[i]==0x3f3f3f3f)for(int j=i;j<=1e6;j+=i)vis[j]=min(vis[j],i);int T,x;cin>>T;while(T--) {cin>>x;Ans=0;dfs(x,0,0);cout<<Ans<<endl;}
}
西安电子科技大学第16届程序设计竞赛G题相关推荐
- 西安电子科技大学第16届程序设计竞赛 F题
链接: https://www.nowcoder.com/acm/contest/107/F 来源:牛客网 题目描述 在学习Operating System的过程中,Glory遇到了这样一个问题,现在 ...
- 西安电子科技大学第16届程序设计竞赛 E题
链接: https://www.nowcoder.com/acm/contest/107/E 来源:牛客网 题目描述 众所周知,Xieldy最常用的口令是******. 为了改变这一现状,他rando ...
- 西安电子科技大学第16届程序设计竞赛 C题
链接:https://www.nowcoder.com/acm/contest/107/C 来源:牛客网 题目描述 Arch0n老师is a rich man, 他靠自己的才华和智商年纪轻轻就赚了不少 ...
- 江西财经大学第一届程序设计竞赛 G题小Q的口袋校园
题目链接:https://www.nowcoder.com/acm/contest/115/G 解题思路:题解就一份代码,贪心的思想.先按开始时间进行排序. 然后不断贪心获得happy[ j ]的最大 ...
- 北京信息科技大学第十三届程序设计竞赛暨ACM选拔赛(重现赛)题解
题目链接: 北京信息科技大学第十三届程序设计竞赛暨ACM选拔赛(重现赛)_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ大学ACM校赛新生赛是面向ACM/ICPC/CCP ...
- 北京信息科技大学第十三届程序设计竞赛暨ACM选拔赛题解
北京信息科技大学第十三届程序设计竞赛暨ACM选拔赛题解 A lzh的蹦床 B 所谓过河 C 旅行家问题1 D 旅行家问题2 E 小菲和Fib数列 F 好玩的音乐游戏 G ranko的手表 H 字母收集 ...
- 大学计算机西安电子科技大学答案,计算机网络技术与应用课后题答案(西安电子科技大学)...
计算机网络技术与应用课后题答案(西安电子科技大学) <计算机网络应用基础>试题(1) 一.填空题(每空1分,共24分,答案写在横线上) 1.按逻辑组成划分,计算机网络是由和两部分组成的. ...
- 哈尔滨理工大学第12届程序设计竞赛--ADK题
A割韭菜--线段树 题目链接: A-割韭菜_哈尔滨理工大学第12届程序设计竞赛(同步赛) (nowcoder.com) #include <bits/stdc++.h>using name ...
- 2018年北京信息科技大学第十届程序设计竞赛暨ACM选拔赛题解
链接:https://www.nowcoder.com/acm/contest/118/A 来源:牛客网 PUBG 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语 ...
最新文章
- Git 使用规范流程
- hive左关联剔除和where 剔除不一致
- 520戏精上身!纸短情长,一句顶一万句的花式告白语抱走不谢!
- Eigen有哪些需要注意的操作
- 如何判断对象是否存活之引用计数发
- 机器视觉行业市场现状及发展前景分析
- matplotlib图表介绍
- Qt OpenGL 图像的平移(使用glTranslatef)
- python 混淆矩阵_新手常见的5个Python错误
- NoSQL 数据库分类
- 苹果id可以同时用两个手机吗_科技V报余承东:鸿蒙OS随时可用于手机;疑似魅族16s Pro通过3C认证20190809...
- Win7升Windows10有获取通知,但是就不推送的解决方法
- windows环境下sqlmap安装教程及问题详解
- 第6课 - 开发中的辅助工具
- 计算机指数函数表示法,指数函数(第1课时)教学设计.doc
- i18n国际语言代码对照表
- 如何将Kali Linux中的Firefox浏览器语言设置为中文
- php银行卡号查询接口,银行卡归属地查询
- 视频水印去除工具哪个好
- 一个程序小白的大胆尝试 (鸡汤)
热门文章
- 讲述Sagit.Framework解决:双向引用导致的IOS内存泄漏(上)
- [linux]centos7下解决yum install mysql-server没有可用包
- TSP - 状态压缩dp
- bootstrap源码分析之Carousel
- 《Cracking the Coding Interview》——第18章:难题——题目3
- YII框架开发一个项目的通用目录结构:
- Object-c基础之一:#import,NSLog(),数据类型
- c++ 无法读取内存_Linux内存机制以及手动释放swap和buffer和cache
- xpcom java_[Mozilla] JavaXPCOM 的jar 包概述
- php旋转数组找出最小的,LeetCode 153 寻找旋转排序数组中的最小值