题目描述 Description

作为上白泽慧音老师的出色弟子,数学奇才琪露诺在算术方面有很深的造诣。今天,codevs有幸请到了这位数学界的奇葩作为本场考试的第一题主考官。

琪露诺喜欢0-9之间的数字,她喜欢将十进制非负数字的每一位一一识别出来,再将它们用计算器加起来,也即数字的数位之和,例如,对于1234,琪露诺会用计算器算出1+2+3+4=10。

琪露诺不仅会使用计算器的加法,还会使用计算器的减法、乘法和求幂操作,她觉得一个数x对她来说是有趣的,当且仅当她将x的数位之和算出来后,进行求k次幂的操作,再乘p,再加上或减去|q|得到的数恰好还是x

琪露诺是非常好奇,在一段区间[l,r]以内的所有整数x里,有多少个x对她来说是有趣的,她希望你能帮她解决这个问题。

输入描述 Input Description

第一行三个整数k,p和q,表示求k次幂,乘以p,如果q为正则加上|q|,如果非正则减去|q|。

第二行两个非负整数l和r,表示所求的区间,保证l≤r。

输出描述 Output Description

第一行一个非负整数n,表示有多少个有趣的x。

如果为n正,则第二行升序输出n个非负整数,表示这n个有趣的数字,数字之间用一个空格隔开,行末可以有多余空格。

样例输入 Sample Input

2 2 -1

1 999

样例输出 Sample Output

4

1 31 337 967

数据范围及提示 Data Size & Hint

对于100%的数据,有1≤k≤5,0≤p,|q|≤10000,0≤l≤r≤109

思路

很显然我们不可能直接对每个数进行验证;

但是,数位和的话,似乎只有0~72这些极少的情况;

于是,我们就可以根据数位,先打个表。。。然后问题解决了。

代码实现

 #include<cstdio>
#include<algorithm>
using namespace std;
int k,p,q,l,r,ans;
int s[];
long long a,b,c;
int main(){
scanf("%d%d%d",&k,&p,&q);
scanf("%d%d",&l,&r);
for(int i=;i<=;i++){
a=,b=;
for(int j=;j<=k;j++) a*=i;
a*=p,a+=q,c=a;
while(a) b+=a%,a/=;
if(b==i&&l<=c&&c<=r) s[ans++]=c;
}
printf("%d\n",ans);
for(int i=;i<ans;i++) printf("%d ",s[i]);
putchar('\n');
return ;
}

[codeVS3943] 数学奇才琪露诺的更多相关文章

  1. CODEVS 3943 数学奇才琪露诺

    [题目描述 Description] 作为上白泽慧音老师的出色弟子,数学奇才琪露诺在算术方面有很深的造诣.今天,codevs有幸请到了这位数学界的奇葩作为本场考试的第一题主考官. 琪露诺喜欢0-9之间 ...

  2. 【洛谷】【动态规划+单调队列】P1725 琪露诺

    [题目描述:] 在幻想乡,琪露诺是以笨蛋闻名的冰之妖精. 某一天,琪露诺又在玩速冻青蛙,就是用冰把青蛙瞬间冻起来.但是这只青蛙比以往的要聪明许多,在琪露诺来之前就已经跑到了河的对岸.于是琪露诺决定到河 ...

  3. 洛谷P1725 琪露诺

    传送门啦 本人第一个单调队列优化 $ dp $,不鼓励鼓励? 琪露诺这个题,$ dp $ 还是挺好想的对不,但是暴力 $ dp $ 的话会 $ TLE $ ,所以我们考虑用单调队列优化. 原题中说她只 ...

  4. [洛谷P3693]琪露诺的冰雪小屋

    题目大意:琪露诺的冰雪小屋,我做的第一道大模拟题. 题解:模拟... 卡点:无数小错误,要是没有写一点调一点,那大概是永远调不出来了... C++ Code: #include <cstdio& ...

  5. P1725 琪露诺

    P1725 琪露诺 单调队列优化dp 对于不是常数转移的dp转移,我们都可以考虑单调队列转移 然而我们要把数组开大 #include<cstdio> #include<algorit ...

  6. AC日记——琪露诺 洛谷 P1725

    琪露诺 思路: 单调队列+dp: 然而劳资不会单调队列,所以,线段树水过; 来,上代码: #include <cstdio> #include <cstring> #inclu ...

  7. 「LuoguP1725」琪露诺(dp 单调队列

    题目描述 在幻想乡,琪露诺是以笨蛋闻名的冰之妖精. 某一天,琪露诺又在玩速冻青蛙,就是用冰把青蛙瞬间冻起来.但是这只青蛙比以往的要聪明许多,在琪露诺来之前就已经跑到了河的对岸.于是琪露诺决定到河岸去追 ...

  8. Luogu【P1725】琪露诺(单调队列,DP)

    本文是笔者第二篇解题报告.从现在开始,会将练的一些题发到博客上并归类到"解题报告"标签中. 琪露诺是这样一道题 这道题可以用纯DP做,但是据说会超时.(为什么?看起来过河这题比它数 ...

  9. 洛谷—— P1725 琪露诺

    https://www.luogu.org/problem/show?pid=1725 题目描述 在幻想乡,琪露诺是以笨蛋闻名的冰之妖精.某一天,琪露诺又在玩速冻青蛙,就是用冰把青蛙瞬间冻起来.但是这 ...

随机推荐

  1. [Swift通天遁地]一、超级工具-(6)通过JavaScript(脚本)代码调用设备的源生程序

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  2. HTML基础---表单

    表单 <form id="" name="" method="post/get" action="负责处理的服务端" ...

  3. Quartz.Net学习笔记(2)-简介

    一.Quartz.Net是什么 1.来源 Quartz.Net是一个开源的作业调度框架: 2.下载地址 官网地址:http://www.quartz-scheduler.net/documentati ...

  4. Integer / BigInteger / BigDecimal 方法

    import java.math.BigDecimal; import java.math.*; public class Main{ public static void main(String[] ...

  5. CSS布局整理

    目录 常用居中方法 水平居中 垂直居中 单列布局 二列&三列布局 float+margin position+margin 圣杯布局(float+负margin) 双飞翼布局(float+负m ...

  6. Python中*args和**kwargs的使用

    函数定义 使用*args和**kwargs传递可变长参数: *args用作传递非命名键值可变长参数列表(比如元组) **kwargs用作传递键值可变长参数列表(比如字典) 函数入参 *args 传递一 ...

  7. spring中配置数据源

    spring中配置数据源的几种常见方式: #mysql 数据库配置(jdbc.properties) jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.u ...

  8. R语言常用数学函数

    语言的数学运算和一些简单的函数整理如下: 向量可以进行那些常规的算术运算,不同长度的向量可以相加,这种情况下最短的向量将被循环使用.   > x <- 1:4 > a <- 1 ...

  9. Objective-C中copy 、retain以及ARC中新加入的strong、weak关键字的含义

    copy: 创建一个引用计数为1的对象,然后释放旧的对象 retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的引用计数为 1 Copy其实是建立了一个相同的对象,而retain不是: ...

  10. eclipse配置Tomcat服务器server locations的方法

    最近放弃了使用Myeclipse,转而使用eclipse作为开发工具,确实Myeclipse集成了太多东西,使得开发人员的配置越来越少,这不是个好事,使用eclipse后,有些地方就得自己去配置,比如 ...