第一题0,第二题AC,心碎了一地 int r[15][10]; int c[10]; int count(int n){ int cnt = 0; while (n){ cnt++; n /= 10; } return cnt; } long long getnum(int n, int m){ long long res = n; while (m--) res *= 10; return res; } int main(){ int n; cin >> n; vector<int> a(n); for (int i = 0; i < n; i++){ cin >> a[i]; r[count(a[i])][a[i] % 7]++; c[a[i] % 7]++; } long long res = 0; for (int i = 1; i <= 9; i++){ for (int j = 0; j <= 6; j++){ if (r[i][j] == 0)continue; for (int k = 0; k <= 6; k++){ if (c[k] == 0)continue; long long tmp = getnum(k, i) + j; if (tmp % 7 == 0){ if(j==k)res += r[i][j] * (c[k] - 1); else res += r[i][j] * c[k]; } } } } cout << res << endl; }
点赞 评论

相关推荐

牛客网
牛客企业服务