CODEVS 3943 数学奇才琪露诺
作为上白泽慧音老师的出色弟子,数学奇才琪露诺在算术方面有很深的造诣。今天,codevs有幸请到了这位数学界的奇葩作为本场考试的第一题主考官。
琪露诺喜欢0-9之间的数字,她喜欢将十进制非负数字的每一位一一识别出来,再将它们用计算器加起来,也即数字的数位之和,例如,对于1234,琪露诺会用计算器算出1+2+3+4=10。
琪露诺不仅会使用计算器的加法,还会使用计算器的减法、乘法和求幂操作,她觉得一个数x对她来说是有趣的,当且仅当她将x的数位之和算出来后,进行求k次幂的操作,再乘p,再加上或减去|q|,得到的数恰好还是x。
琪露诺是非常好奇,在一段区间[l,r]以内的所有整数x里,有多少个x对她来说是有趣的,她希望你能帮她解决这个问题。
第一行三个整数k,p和q,表示求k次幂,乘以p,如果q为正则加上|q|,如果非正则减去|q|。
第二行两个非负整数l和r,表示所求的区间,保证l≤r。
第一行一个非负整数n,表示有多少个有趣的x。
如果为n正,则第二行升序输出n个非负整数,表示这n个有趣的数字,数字之间用一个空格隔开,行末可以有多余空格。
2 2 -1
1 999
4
1 31 337 967
对于100%的数据,有1≤k≤5,0≤p,|q|≤10000,0≤l≤r≤109。
【解题思路】
这是CODEVS月赛的第一题,很多人抱怨输入数据给错了,最大到10^10,但我并没有受到影响,因为这个题目本来就不是暴力枚举来做的,很显然,最大数为999999999,此时所有位数相加为81,也就是说没有一个数的各位加和比81大,那么我们只需要枚举这81个数经过处理之后的数值,并判断数值是否在范围内就可以了。
program shuxue;
var k,p,q,l,r,i,j,sum,n:Longint;
a,b:array[..] of int64;
c:int64;
begin
read(k,p,q);
read(l,r);
for i:= to do a[i]:=i;
for i:= to do
begin
for j:= to k- do
a[i]:=a[i]*i;
a[i]:=a[i]*p;
a[i]:=a[i]+q;
end;
for i:= to do
begin
sum:=;
if (a[i]>=l) and(a[i]<=r) then
begin
c:=a[i];
while a[i]> do
begin
sum:=a[i] mod +sum;
a[i]:=a[i] div ;
end;
if sum=i then
begin
inc(n);
b[n]:=c;
end;
end;
end;
writeln(n);
for i:= to n do write(b[i],' ');
end.
CODEVS 3943 数学奇才琪露诺的更多相关文章
- [codeVS3943] 数学奇才琪露诺
题目描述 Description 作为上白泽慧音老师的出色弟子,数学奇才琪露诺在算术方面有很深的造诣.今天,codevs有幸请到了这位数学界的奇葩作为本场考试的第一题主考官. 琪露诺喜欢0-9之间的数 ...
- 【洛谷】【动态规划+单调队列】P1725 琪露诺
[题目描述:] 在幻想乡,琪露诺是以笨蛋闻名的冰之妖精. 某一天,琪露诺又在玩速冻青蛙,就是用冰把青蛙瞬间冻起来.但是这只青蛙比以往的要聪明许多,在琪露诺来之前就已经跑到了河的对岸.于是琪露诺决定到河 ...
- 洛谷P1725 琪露诺
传送门啦 本人第一个单调队列优化 $ dp $,不鼓励鼓励? 琪露诺这个题,$ dp $ 还是挺好想的对不,但是暴力 $ dp $ 的话会 $ TLE $ ,所以我们考虑用单调队列优化. 原题中说她只 ...
- [洛谷P3693]琪露诺的冰雪小屋
题目大意:琪露诺的冰雪小屋,我做的第一道大模拟题. 题解:模拟... 卡点:无数小错误,要是没有写一点调一点,那大概是永远调不出来了... C++ Code: #include <cstdio& ...
- P1725 琪露诺
P1725 琪露诺 单调队列优化dp 对于不是常数转移的dp转移,我们都可以考虑单调队列转移 然而我们要把数组开大 #include<cstdio> #include<algorit ...
- AC日记——琪露诺 洛谷 P1725
琪露诺 思路: 单调队列+dp: 然而劳资不会单调队列,所以,线段树水过; 来,上代码: #include <cstdio> #include <cstring> #inclu ...
- 「LuoguP1725」琪露诺(dp 单调队列
题目描述 在幻想乡,琪露诺是以笨蛋闻名的冰之妖精. 某一天,琪露诺又在玩速冻青蛙,就是用冰把青蛙瞬间冻起来.但是这只青蛙比以往的要聪明许多,在琪露诺来之前就已经跑到了河的对岸.于是琪露诺决定到河岸去追 ...
- Luogu【P1725】琪露诺(单调队列,DP)
本文是笔者第二篇解题报告.从现在开始,会将练的一些题发到博客上并归类到"解题报告"标签中. 琪露诺是这样一道题 这道题可以用纯DP做,但是据说会超时.(为什么?看起来过河这题比它数 ...
- 洛谷—— P1725 琪露诺
https://www.luogu.org/problem/show?pid=1725 题目描述 在幻想乡,琪露诺是以笨蛋闻名的冰之妖精.某一天,琪露诺又在玩速冻青蛙,就是用冰把青蛙瞬间冻起来.但是这 ...
随机推荐
- 关于MyBatis的工作流程
1.从一个jdbc程序开始 public static void main(String[] args) { Connection connection = null; PreparedStateme ...
- 【C语言】函数和自定义函数
函数,我之前也提到过一点点内容.其实函数是很好理解的,但是写起来又十分麻烦. 一. 函数引入 我们知道,C源程序是由函数组成的.请看下面的简单函数例子 #include <stdio.h ...
- SpringMVC与Struts2配置区别
Spring MVC模型与Struts2模型应用: Html表单: 上述这两段代码无论是SpringMVC还是Struts2,都可以共用.而在请求响应处理类(也就是Controller)上的设计差 ...
- dede常用命令
获取日期:全局:{dede:field.pubdate function="MyDate('Y-m-d H:i',@me)"/} 局部:[field:pubdate funct ...
- 初学android:四大组件之contentprovider
一.ContentProvider的概念ContentProvider:为存储和获取数据提供统一的接口.可以在不同的应用程序之间共享数据.Android已经为常见的一些数据提供了默认的ContentP ...
- C#字符串拼接怎么转义背景图片
C#字符串拼接怎么转义背景图片 StringBuilder sb = new StringBuilder(); sb.Append("<div style=\"backg ...
- java后台正则验证
public static boolean checkPhone(String phone) { Pattern pattern = Pattern.compile("^[1][3-8]+\ ...
- IOS 应用程序启动加载过程(从点击图标到界面显示)
今天帮同事解决问题的时候发现,程序BUG是由加载过程引起的.所以当局部代码没有问题,但是程序一运行却总不是我们想要结果的时候,我们应该想想是不是因为我们忽略了试图加载过程的原因.下面我们用一个例子来简 ...
- spring mvc 全局异常处理
package com.tool; public class MyException extends Exception{ public String Msg; public String ErrCo ...
- 利用css3动画和border来实现圆形进度条
最近在学习前端的一些知识,发现border的功能十分强大啊! 首先来看看demo 就是这么一个圆形的进度条,在文本框中输入0-100的数值下面的进度条相应的转到多少 这个主要是利用border,旋转和 ...