这题是在1到n范围内找满足(设一个数为x,数位之和为sum(x))x-sum(x)>=s的数的个数,根据x满足条件,我们就可以得到x+1也满足条件,因为x+1-sum(x+1)=x+1-(sum(x)+1)=x-sum(x),由x-sum(x)>=s可得x+1-sum(x+1),所以x满足则x+1也满足,可以推广得到一个数满足则其后面的数都满足,因此要找1到n内总的满足条件的数,只需找到第一个满足条件的即可,然后看样例又可以知道数越大满足条件的可能性就越大,因此具有单调性,可以用二分找这个数,0视为不满足,1视为满足,可以看出是这样00001111。。。。

#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll n,s;
bool check(ll x)
{ll tmp1=0;ll tmp2=x;while(x){tmp1=tmp1+x%10;x/=10;}if(tmp2-tmp1>=s)return true;elsereturn false;
}
int main()
{std::ios::sync_with_stdio(false);cin>>n>>s;ll low=1,up=n,mid,ans=-1;while(low<=up){mid=(low+up)>>1;if(check(mid)){ans=mid;up=mid-1;}elselow=mid+1;}if(ans==-1)cout<<0<<endl;elsecout<<n-ans+1<<endl;return 0;
}

CF - 817C. Really Big Numbers相关推荐

  1. 启发式合并详解 (基于CF 1620E - Replace the Numbers)

    前言: 这是Educational Codeforces Round 119 (Rated for Div. 2)的第五题, 这个题我最开始使用从后往前的方法写的,复杂度 O(n)O(n)O(n). ...

  2. 动态规划总结与题目分类

    源博客链接:http://blog.csdn.net/cc_again/article/details/25866971 动态规划一直是ACM竞赛中的重点,同时又是难点,因为该算法时间效率高,代码量少 ...

  3. 『ACM-算法-动态规划』初识DP动态规划算法

    一.多阶段决策过程的最优化问题 在现实生活中,有类活 动的过程,由于 它的特殊性,可将过程分成若干个互相阶段.在它的每一阶段都需要作出决策,从而使整个过程达到最好的活动效果.当阶段决策的选取不是任意确 ...

  4. (转)dp动态规划分类详解

    dp动态规划分类详解 转自:http://blog.csdn.NET/cc_again/article/details/25866971 动态规划一直是ACM竞赛中的重点,同时又是难点,因为该算法时间 ...

  5. 《动态规划》— 动态规划分类

    动态规划(英语:Dynamic programming,DP)是一种在数学.计算机科学和经济学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法. 动态规划常常适用于有重叠子问题和最 ...

  6. 转:动态规划题目分类

    https://blog.csdn.net/cc_again/article/details/25866971 一.简单基础dp 这类dp主要是一些状态比较容易表示,转移方程比较好想,问题比较基本常见 ...

  7. 【DP专辑】ACM动态规划总结

    转载请注明出处,谢谢.   http://blog.csdn.net/cc_again?viewmode=list          ----------  Accagain  2014年5月15日 ...

  8. ACM比赛经验、刷题记录及模板库总结(更新中)

    前言 本文所提及的部分题目代码,可以在我的Github上找到 第一部分 经验分享及感受 第二部分 刷题记录 一.基础算法&程序语言 //strlen()函数的复杂度是O(n)要小心 //截取字 ...

  9. ACM 动态规划(简称dp) 分类

    转载自:   http://blog.csdn.net/cc_again?viewmode=list          ----------  Accagain  2014年5月15日 动态规划博客地 ...

最新文章

  1. Redis的Java客户端Jedis的八种调用方式(事务、管道、分布式…)介绍(转)
  2. [bzoj1614]: [Usaco2007 Jan]Telephone Lines架设电话线
  3. RDP(远程桌面)优化
  4. 微信运动:抓住用户的小九九,一个都别跑!
  5. Windows系统程序设计之结构化异常处理
  6. 句法依存分析_复旦大学邱锡鹏教授:词法、句法分析研究进展综述
  7. mysql 脏数据查询_MySQL数据库02
  8. v-bind:href= 拼接字符串 - 代码篇
  9. 监控oracle等待事件
  10. 购物网站讨论5:会员功能的实现
  11. 王招治计算机财务管理,计算机财务管理——以Excel为分析工具
  12. 如何在Excel表数据中快速创建新增脚本语句(核心:字符串拼接)
  13. 《LDA数学八卦》读后笔记
  14. PHP没有工作经验简历怎么写,没有工作经验应届生如何写简历呢?
  15. Detecting Photoshopped Faces by Scripting Photoshop笔记
  16. 【直流潮流】基于直流潮流的电力系统停电分布及自组织临界性分析
  17. BSOJ2923 CODEVS1419 藤原妹红 最小生成树+树形dp
  18. CRM销售管理系统能够给企业带来哪些好处?
  19. 树莓派摄像头安装和使用
  20. win10家庭中文版安装docker

热门文章

  1. 解析 ChatGPT 背后的工作原理
  2. 《恒盛策略》6G时代或抢占先机!智慧医疗获多次提及,概念股早盘冲高
  3. CSS 3实战(全彩印刷)
  4. MATLAB与STK互联21:卫星对象操作(12)—加约束条件的可见性问题分析(仰角、距离、视线角约束)
  5. CentOs 无法启动网络,用ip addr看不到IP地址
  6. ubuntu16.04下安装qq/tim、微信等windows应用并解决无法输入中文的问题
  7. 【时间序列】Prophet使用
  8. JavaScript每日一练经典小案例(二)
  9. Ceph Cache Tier中缓存读写流程源码分析
  10. 【C++】string转为TCHAR