当前位置: 代码迷 >> 综合 >> codeforces 1538F Interesting Function
  详细解决方案

codeforces 1538F Interesting Function

热度:96   发布时间:2023-12-02 23:09:12.0

链接:

https://codeforces.com/problemset/problem/1538/F

题意:

给两个整数l,r,问从l每次加1,一直加到r,途中变化的数字有多少个。

本题每次做加法使其个位数发生变化时,ans+1,使十位数发生变化时,ans+2。通过这点,我们可以先计算一位数r-l,然后再计算穿过了多少两位数,再让ans额外+1........最终得到答案ans。

代码如下:

#include<iostream>
#include<vector>
#include<cmath>
#include<set>
#include<algorithm>
#include<string>
#include<string.h>
#include<random>
#include<queue>
using namespace std;
typedef long long ll;
int main() {int T;cin >> T;while (T--) {ll l, r;cin >> l >> r;ll ans = 0;ans += (r - l);while (l||r) {l /= 10;r /= 10;ans += (r - l);}cout << ans;cout << endl;}return 0;
}

  相关解决方案