题解 | 图像相似度
#include <stdio.h> int main() { int m = 0; int n = 0; scanf("%d %d", &m, &n); int arr1[50][50] = { 0 }; int i = 0; int j = 0; for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { scanf("%d", &arr1[i][j]); } } int arr2[50][50] = { 0 }; for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { scanf("%d", &arr2[i][j]); } } int count = 0; for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { if (arr1[i][j] == arr2[i][j]) { count++; } } } printf("%.2f\n", (float)count * 2 * 100/ (2 * m * n)); return 0; }