
这是我的rz代码:
#include <iostream>
#define mod 998244353
#define lld long long
using namespace std;
int main() {
lld n, ans=1; cin >> n;
for(lld i=0;i<n;i++){
for(lld j=1, cnt=1;j<=1000000000000000000;j*=10, cnt++){
if(i/j<10){
ans=(ans+cnt)%mod;
break;
}
}
}
cout << ans%mod << endl;
return 0;
}
这是我同学的天才代码:
#include <iostream>
const int mod = 998244353;
int main() {
int n;
std::cin >> n;
int digit_count[10] = {0};
for (int i = 1; i <= n; ++i) {
int num = i;
while (num > 0) {
digit_count[num % 10]++;
num = num / 10;
}
}
int s = 0;
for (int i = 0; i < 10; ++i) {
s += digit_count[i];
s %= mod;
}
std::cout << s << std::endl;
return 0;
}
我的20分他的40分