社区讨论

九十分,第七一直过不了,到底少了哪儿啊 求助大佬

P1980[NOIP 2013 普及组] 计数问题参与者 2已保存回复 5

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
5 条
当前快照
1 份
快照标识符
@mi861yv1
此快照首次捕获于
2025/11/21 09:13
4 个月前
此快照最后确认于
2025/11/21 09:13
4 个月前
查看原帖
#include using namespace std;
int main() { int x; long long m,N = 0,n; cin >> n >> x;
CPP
if (x != 0)
{
	if (n % 10 >= x)
		N = N + n / 10 + 1;//个位
	else
		N = N + n / 10;

	for (m = 10; m <= 1e8; m = m * 10)
	{

		if ((n % (m * 10)) / m >= x)
		{
			if ((n / m) == x)
				N = N + n % m + 1;
			else
				N = N + (n / (m * 10) + 1) * m;
		}
		else
			N = N + n / (m * 10) * m;
	}
}
if (x == 0)
{
	if (n / 10 == 0)
		N = 0;
	for (m = 10; m <= 1e8; m = m * 10)
	{
		if (n % (m * 10) /m != 0 || n/m!=0)
		{
			if (n % m / (m / 10) != 0)
				N = N + n / m * (m / 10);
			else
				N = N + (n / m - 1) * (m / 10) + n % (m / 10) + 1;
		}
	}
}
cout << N<<"\n";
return 0;
}

回复

5 条回复,欢迎继续交流。

正在加载回复...