UVA 11038 How Many O's?——整数区间分解
#include #include #include #include typedef long long ll;ll solve (ll num) { if (num < 0) return 0; ll ans = 1, left = num, right = 0, x = 1; while (left >= 10) { ll t = left % 10; left /= 10; if (t) ans += left*x; else ans += (left-1)*x+(right+1); right = right+t*x; x *= 10; } return ans;}int main () { ll n, m; while (~scanf("%lld%lld", &n, &m) && n != -1 && m != -1) { printf("%lld\n", solve(m) - solve(n-1)); } return 0;}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~