关于一段很神奇的代码
  • 板块学术版
  • 楼主ARIS1_0
  • 当前回复5
  • 已保存回复6
  • 发布时间2024/4/14 15:08
  • 上次更新2024/4/14 16:26:32
查看原帖
关于一段很神奇的代码
846661
ARIS1_0楼主2024/4/14 15:08

这是求 1∼n1 \sim n 的数位之和的代码,但是很神奇看不懂,求大佬解答一下

#include<bits/stdc++.h>
using namespace std;
int main() {
	auto f2 = []( unsigned n ) -> unsigned {
		register unsigned tot = 0;
		while( n ) {
			tot += n % 10;
			n /= 10;
		}
		return tot;
	};
	unsigned n;
	cin >> n;
	vector<unsigned> tot( n );
	for( unsigned i = 0, j; i < n; ++i ) {
		cin >> j;
		for( register unsigned k = 1; k <= j; ++k )
			tot[ i ] += f2( k );
	}
	for( register unsigned i = 0; i < n; ++i )
		cout << tot[ i ] << endl;
}
2024/4/14 15:08
加载中...