当前位置: 首页 > wzjs >正文

wordpress 的图片保存在哪东莞网络推广及优化

wordpress 的图片保存在哪,东莞网络推广及优化,云台山旅游景区网站建设内容,hbuilder网站开发过程原题链接:E-小苯的数字操作_牛客周赛 Round 94 题目背景: 集合中初始有一个元素 n 可以对集合进行 k 轮操作,每次操作可以将集合中的元素除以 2(下取整)或乘 2 并将元素添加到集合中,请问最后集合中有几个…
 原题链接:E-小苯的数字操作_牛客周赛 Round 94
题目背景:

        集合中初始有一个元素 n 可以对集合进行 k 轮操作,每次操作可以将集合中的元素除以 2(下取整)或乘 2 并将元素添加到集合中,请问最后集合中有几个元素。

思路:

        通过模拟过程不难发现以下规律:

                1.如果 n 为偶数,我们对其除以 2 后再乘 2 ,可以发现是没有贡献的。

                二进制:1100 -> 110 -> 1100

                2.如果 n 为奇数,我们对其除以 2 后再乘 2,可以发现有一次贡献。

                二进制:1101 -> 110 -> 1100

        可以假设 k = 4,可以得到几种枚举过程:x x x x,/ x x x,/ / x x,/ / / x

        如果 n 为偶数第一种枚举会得到四点贡献,既每一次都会得到一个新数字;第二种枚举会得到一点贡献,既第一次除以 2 的时候;以此类推,后面两种的贡献为 2,3。

        如果 n 为奇数第一种枚举会得到四点贡献,既每一次都会得到一个新数字;第二种枚举会得到四点贡献,及每一次运算时(因为初始时 n 为奇数,除以 2 以后变为一个偶数,后面每一次运算都是一种新的值,既 1101 -> 110 -> 1100 -> 11000 -> 110000)。

        通过以上模拟可发现:如果当前 n 为偶数那么会得到 1 个新值,如果当前为奇数那么会得到k点贡献(剩余轮数)。

        特判:如果 n = 1,他的贡献是 1,因为 0 后面的数字不能继续除了。

        为什么不乘完再除呢:如果当前 n 为奇数,乘 2 变为偶数,再除以 2 又变为原来的 n ,可以发现这样没有意义。

数据范围:

        1 <= t <= 1e4,1 <= n,k <= 1e9。

ac代码: 
#include <bits/stdc++.h>#define ioscc ios::sync_with_stdio(false), cin.tie(0), cout.tie(0)
#define endl '\n'
#define me(a, x) memset(a, x, sizeof a)
#define all(a) a.begin(), a.end()
#define sz(a) ((int)(a).size())
#define pb(a) push_back(a)
using namespace std;typedef unsigned long long ull;
typedef long long ll;
typedef pair<int, int> pii;
typedef vector<vector<int>> vvi;
typedef vector<int> vi;
typedef vector<bool> vb;const int dx[4] = {-1, 0, 1, 0};
const int dy[4] = {0, 1, 0, -1};
const int MAX = (1ll << 31) - 1;
const int MIN = 1 << 31;
const int MOD = 1e9 + 7;
const int N = 1e5 + 10;template <class T>
ostream &operator<<(ostream &os, const vector<T> &a) noexcept
{for (int i = 0; i < sz(a) - 10; i++)std::cout << a[i] << ' ';return os;
}template <class T>
istream &operator>>(istream &in, vector<T> &a) noexcept
{for (int i = 0; i < sz(a) - 10; i++)std::cin >> a[i];return in;
}void solve()
{int n, k;cin >> n >> k;ll ans = k + 1;while (n > 0){if (!k)break;if (n & 1){if (n > 1)ans += k;else++ans;}else++ans;n >>= 1;k--;}cout << ans << endl;
}int main()
{ioscc;int T;cin >> T;while (T--)solve();return 0;
}

http://www.dtcms.com/wzjs/251172.html

相关文章:

  • 济南网站建设cnwenhui网络营销心得体会800字
  • 公司网站设计制作公司百度竞价排名黑幕
  • 做啪啪网站建立营销型网站
  • 深圳南山建设局官方网站seo网站推广公司
  • xp做网站服务器吗下载百度官方版
  • unity3d做网站网站推广的途径和方法
  • 医疗设备公司的网站怎么做优化网站打开速度
  • 做网站的步骤是什么seo全网推广营销软件
  • 网络推广目标怎么写seo人才招聘
  • 购物网站含有哪些模块链接点击量软件
  • 网站首页banner怎么做百度关键词怎么做排名
  • pageadmin仿站教程少女长尾关键词挖掘
  • 百度站内搜索提升关键词排名百度推广价格
  • 中考复读学校网站怎么做谷歌优化
  • wordpress建m域名网站seo排名关键词点击
  • 网站每年的维护费我想做网络推广
  • 博星卓越营销网站设计网络推广公司怎么找客户
  • 贵阳网站建设q479185700惠私人网站服务器
  • 帮您做网站网上代写文章一般多少钱
  • 嘉兴市做外贸网站宁波免费seo排名优化
  • 如何做网站服务器东莞网站建设公司排名
  • 北京做网站软件网站友情链接
  • 做的网站百度上可以搜到吗站外推广平台有哪些
  • 浦项建设中国有限公司网站大片ppt免费下载安装
  • 阿拉善盟网站制作爱站网挖掘词
  • Myeclipse怎么做网站360排名优化工具
  • 做百度网站排名软件2022十大网络营销案例
  • 职工素质建设 网站站内关键词自然排名优化
  • 网站做百度权重排名论坛新网站推广方案
  • 武汉网页设计哪家好整站优化系统