Ghép cặp

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ớ: 512M
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
Python, Scratch

Người ta tiến hành khảo sát để xây cầu nối hai bên bờ sông. Dữ liệu khảo sát của mỗi bờ được ghi lại dưới dạng một chuỗi ký tự có độ dài ~N~ ~(1 ≤ N ≤ 10^3)~ viết thường từ a đến z, trong đó mỗi ký tự biểu thị một đặc điểm của khu vực bờ sông tại vị trí đó.

Cầu chỉ có thể được xây tại các vị trí mà cả hai bờ sông có cũng đặc điểm. Một vị trị trên bờ trái có thể kết nối với bất kỳ vị trí nào trên bờ phải nếu hai vị trí đó có cùng đặc điểm.

Yêu cầu: Hãy xác định tổng số phương án xây cầu có thể thực hiện.

Dữ liệu vào
  • Dòng thứ nhất là chuỗi ký tự ~S_1~ là dữ liệu khảo sát của bờ trái.
  • Dòng thứ hai là chuỗi ký tự ~S_2~ là dữ liệu khảo sát của bờ phải.
Dữ liệu ra
  • In ra một số nguyên là tổng số cặp ghép được.
Chấm điểm
  • Thí sinh được 20% số điểm nếu đúng với: ~1 ≤ N ≤ 100~;
  • Thí sinh được 100% số điểm nếu đúng với: ~1 ≤ N ≤ 10^3~.
Sample Input
axafasbb
awaebrbt
Sample Output
10

Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 0
    NahImNotBtBro  đã bình luận lúc 23, Tháng 4, 2025, 12:48

    from collections import Counter

    S1 = input().strip() S2 = input().strip()

    countS1 = Counter(S1) countS2 = Counter(S2)

    totalpairs = 0 for char in countS1: if char in countS2: totalpairs += countS1[char] * countS2[char]

    print(total_pairs)