sau để khảo sát các bạn: Cho số nguyên dương n và dãy số nguyên dương a1, a2, ...an. Hãy đếm xem có bao nhiêu cặp (i, j) khác nhau, để kết quả của tích ai*aj có chữ số tận cùng bằng 9 (1 ≤ i<j<n).
Dữ liệu: Vào từ file TICH9.INP gồm:
+ Dòng đầu tiên là số nguyên dương n (2 ≤ n ≤ 10);
+ Dòng thứ 2 là n số nguyên dương a1, a2, ...an (ai ≤ 10100).
Kết quả: Ghi ra file TICH9.OUT là số lượng cặp thỏa mãn bài toán.
Ví dụ:
TICH9.INP
TICH9.OUT
4
2
3391
Ràng buộc:
+ Có 60% số điểm có n ≤ 103 và ai ≤ 100;
+ Có 30% số điểm có ai ≤ 109.
+ Có 10% số điểm còn lại không có ràng buộc gì thêm.
giúp mk nhé 😇😇
#include <iostream>
#include <fstream>
using namespace std;
const int MAXN = 1e5 + 5;
int n, a[MAXN], countDigit[10];
long long C(int n) {
return 1LL * n * (n - 1) / 2;
}
int main() {
ifstream fin("TICH9.INP");
ofstream fout("TICH9.OUT");
fin >> n;
for (int i = 1; i <= n; i++) {
fin >> a[i];
countDigit[a[i] % 10]++;
}
long long ans = C(countDigit[1]) + C(countDigit[9]) + C(countDigit[3]) + C(countDigit[7]);
fout << ans << endl;
return 0;
}