题意:

求第n个数;

思路:

可以看到一种序列:

1

12

123

1234

12345

123456

1234567

12345678

123456789

1234567891

12345678912

123456789123

...

那么我可以计算前 i 行数的个数(i+1)*i/2;

直接二分到离n最近的那一层,然后n-(i+1)*i/2;%9就是答案,注意还有9,9%9是0;

#include <bits/stdc++.h>
using namespace std;
typedef long long LL; LL cal(LL n)
{
return n*(n+1)/2;
} LL binary_find(LL x)
{
LL left=1;
LL right=100000;
while(left<right)
{
int mid=left+(right-left+1)/2;
if(cal(mid)<x)
left=mid;
else
right=mid-1;
}
// printf("left=%d\n",left);
return cal(left);
} int main()
{
int T;
scanf("%d",&T);
while(T--)
{
LL n;
scanf("%lld",&n);
if(n==1)
{
puts("1");
continue;
}
LL ans=binary_find(n);
// printf("ans=%lld\n",ans);
ans=n-ans;
ans=ans%9;
if(ans)
printf("%lld\n",ans);
else
puts("9");
}
return 0;
}

/*
n*(n+1)/2;二分<=x的那个n;
二分类型
*/

最新文章

  1. 发布两款JQ小插件(图片查看器 + 分类选择器),开源
  2. spring的事务操作
  3. mysql 如何判断 &quot;字符串&quot; 是否为 &quot;数字&quot;
  4. Java多线程(一) 多线程的基本使用
  5. Zabbix探索:模板中发现规则的使用
  6. VS2010+WINDBG+VMWARE9.0和fatal error RC1106: invalid option: -ologo错误
  7. Oracle Outline总结
  8. adb找不到设备
  9. Atitit.hibernate体系结构大总结
  10. 使用padding-top实现自适应背景图片
  11. Ubuntu学习-简单指令
  12. linux脚本:shell, 判断输入参数的个数(命令行)
  13. PHP关于foreach使用引用变量的坑
  14. Java基础——封装
  15. inputClient.js
  16. php5.4使用dblib扩展,连接sqlserver中文乱码问题
  17. React动画组件——React-Transitio-group动画实现
  18. php向数据库插入数据
  19. Tomcat 访问页面或服务器异常,请检查这些方面
  20. Mac 自带的Apache php 狼神的

热门文章

  1. POJ 2263 Heavy Cargo(ZOJ 1952)
  2. 在XP上安装VS2002
  3. Js 模拟鼠标点击事件
  4. Hibernate基础知识介绍
  5. 九度OJ 1101:计算表达式 (DP)
  6. 使用MSSQL同步&amp;发布数据库快照遇到错误:对路径“xxxxx”访问被拒绝的解决方法
  7. java创建文件夹以及文件
  8. 【转】hibernate懒加载的问题,failed to lazily initialize a collection of role
  9. 使用grunt js进行js的链接和压缩
  10. 未公开函数MessageBoxTimeOut 实现定时消息(ZT) MFC实现MessageBox自动消失