find the nth digit

                                                                   Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768
K (Java/Others)

                                                                                              Total Submission(s): 11311    Accepted Submission(s): 3378

->  Link  <-

这种题应该是数位dp吧,之前在cf上第一次碰见这种题,此后不断碰到类似变形的,不过poj上那道Number sequense还是没有A出来,这道题和cf上的那道很相似,用的就是类似的思路,不是很难;

思路:既然是1121231234.....9 123..91 123...912 123...91234...,我们观察数字规律,第1位是1,第3位是2,第10位是4,出现第1个9的时候是第45位,也就是说前45位位数n=(1+i)*i/2,类似于前n项和;而45位以后,每出现的一个字串的长度从10开始递增,最低位从1开始到9然后又从1开始到9,直到位数凑够n;

这样说可能有点不明白,还是用代码解释吧:

#include<bits/stdc++.h>
using namespace std;
int main()
{
int t,n;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
int i=1;
while(n>i)
{
n-=i;//反过来就是相当于前i项和;
i++;
}
while(n>9) n-=9;//当其位数大于45时,就是上面所说的从1开始排到9又从1开始排到9.......所以。。
printf("%d\n",n);
}
return 0;
}//自己在稿子上模拟一下很好理解的;

要不是在cf上看到那种题这道题还不造要做多久,不得不又感慨一下CF上的题真的很启发思维啊,一道题发散性思维就可以解决很多问题,收获很大,做这道题估计不超过半小时,稍微推一下直接A了,真的好开心!!

最新文章

  1. Node.js的process.nextTick(callback)理解
  2. linux 之SCP
  3. Linux上安装Mysql后除了本机其他机器不能访问的问题(zhuan)
  4. XMAL 中x名称控件的Auttribute
  5. 一个简单的反射连接程序(修改文件时间,以及创建Windows服务)
  6. Add/Remove listview web part in publish site via powershell
  7. PHP中判断输入验证码是否一致
  8. JSON.stringify 方法
  9. Libevent核心原理
  10. 【转】SDWebImage实现分析
  11. javascript . 03 函数定义、函数参数(形参、实参)、函数的返回值、冒泡函数、函数的加载、局部变量与全局变量、隐式全局变量、JS预解析、是否是质数、斐波那契数列
  12. .net Winfrom 僵尸窗口 的问题
  13. android系统中如何通过程序打开某个AccessibilityService
  14. 逃逸分析(Escape Analysis)
  15. Apache Phoenix Flume集成 -- JsonEventSerializer改进
  16. RecyclerView错误
  17. P2158/bzoj2190 [SDOI2008]仪仗队
  18. maven 知识点1
  19. [UI基础][QQ登陆界面]
  20. Tree - Gradient Boosting Machine with sklearn source code

热门文章

  1. Struts2 表单提交与execute()方法的结合使用
  2. DateFormat类
  3. Spring注解驱动开发之扩展原理
  4. dubbo系列--集群容错
  5. 搞定redis面试--Redis的过期策略?手写一个LRU?
  6. 常用linux命令大全 转载自:https://www.cnblogs.com/laov/p/3541414.html(大牛笔记)
  7. InChatter系统之服务端的Windows服务寄宿方式(三)
  8. (转)SpringMVC学习(十一)——SpringMVC实现Resultful服务
  9. scrapy 的分页爬取 CrawlSpider
  10. CREATE RULE - 定义一个新的重写规则