第一题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; }
点赞 评论

相关推荐

头顶尖尖的程序员:我是26届的不太懂,25届不应该是找的正式工作吗?为什么还在找实习?大四还实习的话是为了能转正的的岗位吗
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务