Corresponder dados e contar o número do mesmo valor

Eu tenho dois conjuntos de dados (quadros de dados). Gostaria de encontrar valores de correspondência entre esses conjuntos de dados com base nos nomes de cada coluna.

intput1 <- structure(list(A = c(1L, 0L, 1L, 0L), B = c(2L, 2L, 1L, 1L), 
C = c(3L, 1L, 1L, 3L)), .Names = c("A", "B", "C"), class = "data.frame", 
row.names = c("1", "2", "3", "4"))

#     A    B   C
#1    1    2   3
#2    0    2   1
#3    1    1   1
#4    0    1   3

input2 <- structure(list(A = c(1L, 3L, 1L, 0L), B = c(1L, 2L, 0L, 1L), 
C = c(2L, 2L, 1L, 2L)), .Names = c("A", "B", "C"), class = "data.frame", 
row.names = c("1", "2", "3", "4"))

#     A    B   C
#1    1    1   2
#2    3    2   2
#3    1    0   1
#4    0    1   2

Saída esperada:

#     colnames.1   colnames.2   match
#1             A           A        3
#2             A           B        1
#3             A           C        1
#4             B           A        1
#5             B           B        2
#6             B           C        2
#7             C           A        1
#8             C           B        0
#9             C           C        1

onde a coluna final é o número de correspondências.

questionAnswers(1)

yourAnswerToTheQuestion