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 7 by 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 a and b have equal lengths and contain only lucky digits. The strings are not empty, their length does not exceed 105.
OutputPrint on the single line the single number ― the minimum number of operations needed to convert string ainto string b.
Sample test(s) input47 74
output1
input774 744
output1
input777 444
output3
不得不承认CF上的题确实质量很好,这题还是A题就卡了好一阵,思路很诡异。。
题意: 给出一串字符串,只包含数字4和7 然后再给出另一个字符串,同样是只包含4和7,长度相同,现在给定两种操作,①:改变a串某位上的数字;②:交换a串任意两位上的数字,求最小操作数 使得a==b因为是要最小操作数,所以要尽可能的执行交换操作,所以 扫一遍a串,看它和b串的对应位置上的数字是不是相同,若不同,记下4和7不同的个数,其中最大数就是答案。
#include#include #include #include #include #include using namespace std; #define LL long long const int maxn=100050; char s[maxn],t[maxn]; int main() { while(~scanf("%s%s",s,t)) { int len=strlen(s),cnt1=0,cnt2=0; for(int i=0;i