BZOJ 2898 模拟
普及组水题.
按位模拟第一个序列和第二个序列,细节比较多..
仅为部分看后面两位的和,如果大于10就近位小于8就不进位等于9就看下一位.
#include <cstdio>
#define LL long long
LL Bin[],K,Ten[],SqrA[],SqrB[],Sqr[];
inline LL Get_A(LL x)
{
LL Pos;
for (LL i=;i<=;i++) if (x<=Bin[i]) {Pos=i; break;}
x=x-Bin[Pos-];
LL t=(x-)/Pos+;
x=x-(t-)*Pos;
t=Ten[Pos]+t-;
for (LL i=;i<=Pos-x;i++) t=t/;
return t%;
}
inline LL Get_B(LL x)
{
LL Pos;
for (LL i=;i<=;i++) if (x<=Sqr[i]) {Pos=i; break;}
x=x-Sqr[Pos-];
LL t=(x-)/Pos+;
x=x-(t-)*Pos;
t=t+SqrA[Pos]-;
t=t*t;
for (LL i=;i<=Pos-x;i++) t=t/;
return t%;
}
LL Get_F(LL x)
{
LL Ret=Get_A(x)+Get_B(x);
if (Ret>=) return ;
if (Ret<=) return ;
return Get_F(x+);
}
inline void Init()
{
Ten[]=; for (LL i=;i<=;i++) Ten[i]=Ten[i-]*;
Bin[]=; for (LL i=;i<=;i++) Bin[i]=Bin[i-]*;
for (LL i=;i<=;i++) Bin[i]=Bin[i]*i;
for (LL i=;i<=;i++) Bin[i]=Bin[i]+Bin[i-]; SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
SqrA[]=,SqrB[]=;
for (LL i=;i<=;i++) Sqr[i]=Sqr[i-]+(SqrB[i]-SqrA[i]+)*i;
}
int main()
{
scanf("%lld",&K);
Init();
printf("%lld\n",(Get_A(K)+Get_B(K)+Get_F(K+))%);
return ;
}
C++
BZOJ 2898 模拟的更多相关文章
- 打谷机 BZOJ 1603 模拟
Farmer John有一个过时的打谷机(收割小麦),它需要带子来带动.发动机驱动轮1总是顺时针旋转的,用来带动转轮2,转轮2来带动转轮3,等等.一共有n(2<=n<=1000)个转轮(n ...
- [BZOJ 1033] [ZJOI2008] 杀蚂蚁antbuster 【模拟!】
题目链接: BZOJ - 1033 题目分析 模拟!纯粹按照题目描述模拟! 这是一道喜闻乐见的经典模拟题! 我一共写了2遍,Debug 历时2天的所有晚自习 ... 时间超过 8h ... 我真是太弱 ...
- 【BZOJ】【2741】【FOTILE模拟赛】L
可持久化Trie+分块 神题……Orz zyf & lyd 首先我们先将整个序列搞个前缀异或和,那么某一段的异或和,就变成了两个数的异或和,所以我们就将询问[某个区间中最大的区间异或和]改变成 ...
- 【BZOJ 2957】楼房重建&&Codechef COT5 Count on a Treap&&【NOIP模拟赛】Weed 线段树的分治维护
线段树是一种作用于静态区间上的数据结构,可以高效查询连续区间和单点,类似于一种静态的分治.他最迷人的地方在于“lazy标记”,对于lazy标记一般随我们从父区间进入子区间而下传,最终给到叶子节点,但还 ...
- BZOJ 1088 水模拟
BZOJ水一道~ 枚举前两个位置是否放雷,模拟向下推.能够则ans++ #include "stdio.h" #include "string.h" int a ...
- BZOJ 1920 Luogu P4217 [CTSC2010]产品销售 (模拟费用流、线段树)
题目链接 (bzoj) https://www.lydsy.com/JudgeOnline/problem.php?id=1920 (luogu) https://www.luogu.org/prob ...
- BZOJ 5326 [JSOI2017]博弈 (模拟费用流、线段树)
题目链接 https://www.lydsy.com/JudgeOnline/problem.php?id=5326 题解 终于成为第8个A掉这题的人--orz tzw神仙早我6小时 本以为这东西常数 ...
- BZOJ 3836 Codeforces 280D k-Maximum Subsequence Sum (模拟费用流、线段树)
题目链接 (BZOJ) https://www.lydsy.com/JudgeOnline/problem.php?id=3836 (Codeforces) http://codeforces.com ...
- bzoj 2741: 【FOTILE模拟赛】L 分塊+可持久化trie
2741: [FOTILE模拟赛]L Time Limit: 15 Sec Memory Limit: 162 MBSubmit: 1116 Solved: 292[Submit][Status] ...
随机推荐
- CSS3支持box-flex弹性布局
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title> ...
- 非对称加密算法-RSA
注意:本节内容主要参考自<Java加密与解密的艺术(第2版)>第8章“高等加密算法--非对称加密算法” 12.1.RSA(最经典的非对称加密算法) 特点: 使用一套密钥即可完成加解密(与D ...
- WPF附加属性
附加属性实质也是依赖属性,是说一个属性本来不属于某个对象,但由于某种需求被后来附加上的,也就是说把对象放入一个特定环境后才具有的属性 例子:人在学校有年纪和班级两个属性,人放在学校里会获得年级和班级两 ...
- LeetCode 201 Bitwise AND of Numbers Range 位运算 难度:0
https://leetcode.com/problems/bitwise-and-of-numbers-range/ [n,m]区间的合取总值就是n,m对齐后前面一段相同的数位的值 比如 5:101 ...
- C#之事件
事件,是C#编程模型中重要的一个概念,通过对事件的理解,可以更好的了解C#程序运行机制.C#中的事件,可以简单的理解为类或者对象发生了一件事,并且把这件事通知给了其他的类或者对象,其他的类或者对象可以 ...
- 请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句
提供一种算法: #define max(a, b) ((((a)-(b)) + fabs(a-b))?(a):(b))
- 微信的redirect_uri参数错误解决办法
近期,我们在调试独立的微信商城的时候,遇到了一些问题,比如:微信的redirect_uri参数错误,这是一个很普遍存在的问题,当然解决起来并不难,首先,我们得去找到发生这一事件的原因. 可能1:授权目 ...
- 使用php-cs-fixer格式化你的代码
在开发中,我们会有意识的遵行一套规范来保证团队代码的一致性.PSR是我们PHP遵循的共同规范. 在这里,推荐一个代码格式化工具php-cs-fixer,可以一键把代码格式化为PSR-2的标准. 安装: ...
- isMobile
var isMobile = { Android: function() { return navigator.userAgent.match(/Android/i); }, BlackBerry: ...
- Bootstrap <基础十二>下拉菜单(Dropdowns)
Bootstrap 下拉菜单.下拉菜单是可切换的,是以列表格式显示链接的上下文菜单.这可以通过与 下拉菜单(Dropdown) JavaScript 插件 的互动来实现. 如需使用下列菜单,只需要在 ...