问题描述:
Petya loves lucky numbers very much. Everybody knows that lucky numbers are positive integers whose decimal record contains only the lucky digits 4 and 7. For example, numbers 47, 744, 4 are lucky and 5, 17, 467 are not.
Petya has two strings a and b of the same length n. The strings consist only of lucky digits. Petya can perform operations of two types:
- replace any one digit from string a by its opposite (i.e., replace 4 by 7 and 7by 4);
- swap any pair of digits in string a.
Petya is interested in the minimum number of operations that are needed to make string a equal to string b. Help him with the task.
InputThe first and the second line contains strings a and b, correspondingly. Strings aand b have equal lengths and contain only lucky digits. The strings are not empty, their length does not exceed 105.
Output
Print on the single line the single number — the minimum number of operations needed to convert string a into string b.
Example
47
74
1
题目题意:给了俩个串,问最少操作次数使得a串变成b串
#include<iostream>
#include<cstdio>
#include<string>
#include<cmath>
using namespace std;
int main()
{
string str1,str2;
while (cin>>str1>>str2) {
int num1=0,num2=0,num3=0;
for (int i=0;i<str1.size();i++) {
if (str1[i]!=str2[i]) {
num3++;
if (str1[i]=='4') num1++;
else num2++;
}
}
int Min=min(num1,num2);
printf("%d\n",Min+num3-2*Min);
}
return 0;
}