AT_abc433_d
讨厌的 64 位整数,害得我吃了一发罚时。
思路
先开一个 map 数组,
接着再枚举每一个数。显然一个数补
核心代码
ll n, m, ans, a[200005];
map<int, int> mp[15];
int main()
{
read(n, m), readArr(a, n);
ull x = 1;
rep(i, 1, 10)
{
x *= 10;
rep(j, 1, n) mp[i][1ull * a[j] * x % m]++;
}
rep(i, 1, n) ans += mp[int(log10(a[i])) + 1][(m - a[i] % m) % m];
write(ans);
return 0;
}