BZOJ2900 好玩的数字游戏
好玩的数字游戏
TK在虐题的同时,也喜欢玩游戏。
现在,有这样的一个游戏,规则是这样的:
先随机给出一个数字N,然后你在操场上把1到N的所有数字写成一排,就像这样:
123456789101112131415….
接着你在每个数字前面添上加减号,每逢排在奇数位上的数字,就写上加号;每逢排在偶数位上的数字,就写上减号。恩…最后你得到一个超级长的式子。并且可以算出这个式子的结果。
TK觉得这个游戏很有意思,于是他没日没夜地玩啊玩啊玩啊…
或许你觉得这个游戏没有意思…恩…但是,如果你是TK,对于给定的N,你能够算出来最后的结果应该是多少么?
输入格式:
多组数据。每个测试点的数据组数不超过1000组。
每一行仅一个正整数N。保证没有多余的什么奇怪的字符。
每个测试点的数据最后一行一定是数字0。代表这个测试点的结束。
输出格式:
对于每组数据,输出相应的结果。
1 #include<cstdio> 2 #define ll long long 3 using namespace std; 4 ll ans,n,pows[19]; 5 int main() 6 { 7 pows[0]=1; for(int i=1;i<=18;i++) 8 pows[i]=pows[i-1]*10; 9 while(1) 10 { 11 scanf("%lld",&n); if(n==0) return 0; 12 for(int i=1;i<=9;i++)for(int j=0;j<=15;j++)for(int k=j;k<=15;k++) 13 { 14 ll start,end,fr; 15 if(pows[j]*i+(k>j)*pows[k]>n) continue; 16 start=j==k?0:pows[k-1]; 17 if(n>=pows[j]-1+pows[j]*i+pows[k+1]-pows[j+1]) end=pows[k]-1; 18 else if(n%pows[j+1]/pows[j]<i) 19 end=n/pows[j+1]*pows[j]-1; 20 else if(n%pows[j+1]/pows[j]==i) 21 end=n/pows[j+1]*pows[j]+n%pows[j]; 22 else end=n/pows[j+1]*pows[j]+pows[j]-1; 23 fr=(((i&1&&j==0&&(k&1)==0)^(k&1)^(j&1))*2-1)*i; 24 if((k&1)==0&&j) 25 { 26 if(((start^end)&1)==0) ans+=fr; 27 } 28 else ans+=(end-start+1)*fr; 29 } 30 printf("%lld\n",ans);ans=0; 31 } 32 }
转载于:https://www.cnblogs.com/wcz112/p/6341407.html
BZOJ2900 好玩的数字游戏相关推荐
- bzoj1236 KPSUM bzoj2900 好玩的数字游戏
两个题目的区别只有单组数据和多组数据. 随便放一个的链接好了:传送门 2900: 好玩的数字游戏 Time Limit: 10 Sec Memory Limit: 512 MB Submit: 99 ...
- Dev C++,一个好玩的猜数字游戏
周末了,看了一点代码,发现有一个好玩的数字游戏,贡献给大家,个人觉得还是挺好玩的. 说个题外话,之前写的文章,都是零散的,主要是时间的原因,最近事情有点杂,一说到这个事情,我就心生愧疚,好像我一直说事 ...
- CASIO 5800P计算器游戏--猜数字游戏
CASIO 5800P 计算器游戏--猜数字游戏原代码 我编的计算器小游戏--猜数字游戏 LbI I↙ "xxGUESS NUMBERxx xPROGRAMMER:JCHx -------- ...
- 猜数字游戏 由计算机,猜数字游戏玩法
满意答案 changsheng668 推荐于 2017.10.06 采纳率:50% 等级:12 已帮助:12674人 这个游戏的名字大家可以随便起无所谓的,我们生活中也经常玩这个游戏,满有趣的 ...
- 关于猜数字游戏以及关机指令
这几天学习到了一些没有接触过的东西,因此在这里记录下. 首先是猜数字游戏: 这个小程序特别简单,只要知道相关的几个关键函数就能明白 它的主要函数有rand(返回随机数)以及srand(用来设置随机数的 ...
- 【趣学】C语言猜数字游戏
目录 一.前言 二.从游戏初始界面开始 三.游戏实现 ①rand函数 ②srand函数 ③时间戳 ④time函数 一.前言 学习的过程有时候会有些许枯燥,但换一种方式学习也算是一种有趣的事情,呀哈,写 ...
- 上班划水,给女朋友做个猜数字游戏
上班划水的时候无意中看到了这篇文章 编程学累了?不妨写个小游戏和女朋友一起嗨起来~~ 作为一个有女朋友的程序员,自己也试着用Unity实现一下,带有界面的游戏,女朋友应该喜欢玩,哈哈哈 猜数字游戏,主 ...
- C语言实现简单的猜数字游戏【快来看看你会吗~~】
猜数字游戏 前言 游戏描述 思路 第一步,生成菜单 第二步,编写外部循环--反复玩 第三步,编写游戏代码 综上,整个游戏的代码如下: 前言 相信许多同学和我一样,刚接触c语言一段时间后,觉得c语言特别 ...
- 用法 stl_51Nod 2160 数字游戏 STL基本用法
目录 目录 1. 题目描述 1.1. Limit 1.2. Problem Description 1.3. Input 1.4. Output 1.5. Sample Input 1.6. Samp ...
最新文章
- 复数 Complex Number 教程
- 阻塞队列只有一个线程在同一时刻对其进行或者读或者写
- 架设搭建开源搜索服务器 - Sphinx/Coreseek 安裝
- suoi46 最大和和 (线段树)
- leetcode96. 不同的二叉搜索树 动归vs数学?
- nginx的脚本引擎(一)
- 全字库说文解字字体_【180期】可商用字体大全,无版权纠纷!
- vue cli element 项目结构
- 洛谷 P1187 3D模型
- 【python】list,dict赋值不要用等号,要用extend,update
- 64位win10下安装xgboost python包的教程
- SQL server int 转char类型
- Chrome开发者调试工具Copy element和Copy OuterHTML区别
- php百度网盘登录,php百度网盘同步_http200_mmdb
- 读书笔记——魔鬼经济学3
- 一款网页游戏外挂开发-数据抓包2
- CSS margin 用法
- 2017.11.15作业
- 网易定向预研图形学项目摘录
- 【领域泛化论文阅读】Semantic-Aware Domain Generalized Segmentation