POJ 3589 Number-guessing Game(简单题)

【题目简述】:两个四位数,假设后一个数中的某个数与前一个相应的数的位置和值都相等。则统计数目由几个这种数。记为count1吧。

假设后一个数中的某个数与前一个数的数值相等,但位置不同。

此时这种数的个数记为count2。

写成*A*B,即count1 A count2 B。

【分析】:题目的简述即分析。

//740K 0Ms
#include<iostream>
#include<cstring>
using namespace std;

int main()
{
	int T;
	string a,b;
	int count1,count2;
	cin>>T;
	while(T--)
	{
		count1 = 0;
		count2 = 0;
		cin>>a>>b;
		for(int i = 0;i<4;i++)
		{
			if(a[i] == b[i])
				count1++;
			else
			{
				for(int j = i+1;j<4;j++)
				{
					if(a[i] == b[j])
						count2++;
					if(b[i] == a[j])
						count2++;
				}
			}
		}
		cout<<count1<<'A'<<count2<<'B'<<endl;
	}
	return 0;
}


原文地址:https://www.cnblogs.com/lcchuguo/p/5093619.html