SCBN2 - Số cặp bằng nhau 2
Xem dạng PDF
Gửi bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, PyPy, Python, Ruby, Rust, Scratch, Swift
Cho một dãy gồm ~n~ số nguyên, hãy đếm số cặp bằng nhau trong dãy
Input
- Dòng đầu tiên chứa duy nhất một số nguyên dương ~n~ (số phần tử trong dãy).
- Dòng thứ hai chứa n số nguyên là các phần tử ~a_1,a_2,…,a_n~
Giới hạn:
- ~1≤n≤10^5,0≤a_i≤5.10^4~
Output
- In ra trên một dòng số nguyên không âm là số cặp bằng nhau liên tiếp trong dãy.
Sample
Input #1
4
3 1 2 3
Output #1
1
Input #2
5
4 1 1 2 2
Output #2
2
Input #3
6
5 3 1 2 1 1
Output #3
3
Problem source: Chuyên Sơn La Online Judge
Bình luận
hint
đùng map để lưu các phần tử của mảng a rồi cùng c(n, 2) để đếm số cặp bằng nhau
code tham khảo (c++)
chỗ map <int, int> mp; hệ thống đọc bị lỗi, các bạn sửa thành map <int, int> mp; nhé
OISHI
include <bits/stdc++.h>
using namespace std; long long n,a[1000005]; int main() { cin>>n; for(int i=1 ; i<=n ; i++) { cin>>a[i]; } long long jack=0; for(int i=1 ; i<=n ; i++) { for(int j=i+1 ; j<=n ; j++) { if(a[i]==a[j]) { jack++; } } } cout<<jack; }
d
hi uois;dhsjdjjsJPjpijzdohoncdkshku toi bi gay
cute
include <bits/stdc++.h>
using namespace std; int n,a[100011],cnt; int main() { cin>>n; for(int i=1;i<=n;i++)cin>>a[i]; sort(a+1,a+n+1); for(int i=1;i<=n;i++){ for(int j=i+1;j<=n;j++){ if(a[i]==a[j])cnt++; } } cout<<cnt; return 0; } ae sao bị tle
include <bits/stdc++.h>
using namespace std;
int main() { ios::syncwithstdio(false); cin.tie(nullptr);
}
dành cho ai bí muốn tham khảo nha !
Ý tưởng giải bài này: Thay vì dùng long long int thì dùng string đi vì string không có giới hạn
đề bịp :v có test long long mà bảo a[i] <= 5e4
O(n^2) =))
test 7 là gì thế ạ
bài này bạn có thể sử dụng map để lưu tần suất xuất hiện của các phần tử trong mảng, xong bạn check nếu số lần xuất hiện lớn hơn 2 thì bạn tính tổ hợp chập 2
ban dua minh day a. So luong cap la to hop chap 2 cua k phan tu voi k te nhat bang n.Int chua bang mat
Bài này mng làm cách nào vậy ạ?? E làm mãi k ac được :((
bài này bạn có thể sử dụng map hoặc mảng đếm để lưu tần suất xuất hiện rồi ktra nếu xuất hiện từ 2 lần trở lên thì bạn tính tổ hợp chập 2
tôi có dùng rồi nhưng tính giai thừa cũng bị tle
Bạn tham khảo ý tưởng giải bài : link enter link description here