로곡 P1071 잠복자 C 언어 문제풀이

17582 단어
부호를 붙이다
#include
#include
#include
typedef struct{
	char pre,cur;//                
}dic;
int cnt = 0;
char a[101];
char b[101];
char message[101]; 

int exist(dic book[],char n1,char n2)//            ,     0,
//         1,         2
{
	for(int i = 0;i < cnt;i++)
	{
		if(book[i].pre == n1)
		{
			if(book[i].cur == n2)
				return 1;
			else if(book[i].cur != n2)
				return 2;
		}
		if(book[i].cur == n2)//     
		{
			if(book[i].pre == n1)//     
				return 1;
			else if(book[i].pre != n1)//    ,    
				return 2; 
		}
	}
	return 0;
}

void sort(dic book[])//     
{
	for(int i = 25;i >= 0;i--)
		for(int p = 0;p < i;p++)
			if(book[p].pre > book[p + 1].pre)
			{
				dic temp = book[p];
				book[p] = book[p + 1];
				book[p + 1] = temp;
			}
}

void printMessage(dic book[],char message[])
{
	int len = strlen(message);
	for(int i = 0;i < len;i++)
	{
		int loc = message[i] - 'A';
		printf("%c",book[loc].cur);
	}
}

int main()
{
	scanf("%s",a);
	scanf("%s",b);
	scanf("%s",message);
	dic book[26];//     
	int len = strlen(a);
	if(len < 26)//      
	{
		printf("Failed
"
); return 0; } else { for(int i = 0;i < len;i++) { if(cnt == 0)// { book[cnt].pre = a[i]; book[cnt].cur = b[i]; cnt++; } else if(exist(book,a[i],b[i]) == 0)// { book[i].pre = a[i]; book[i].cur = b[i]; cnt++; } else if(exist(book,a[i],b[i]) == 2)// , { printf("Failed
"
); return 0; } if(cnt == 26)// break; } } sort(book); printMessage(book,message); return 0; }

선 포맷을 삭제하는 문제는 사고방식에서 생각하기에는 어렵지 않지만 비교적 작은 점을 고려해야 한다. 다음은 여러분에게 설명할 것이다. 이 문제는 구조체 수조로 대응하는 암호 자모와 복호화된 자모를 저장하는 것을 선택했다.유사한 사전 유형은 저장할 때 암호 자모가 같지만 복호화 자모가 다르거나 복호화 자모가 같지만 암호 자모가 다른 경우를 주의해야 한다. 이것은 모두 제목의 요구에 부합되지 않는 일일이 대응하는 원칙으로Failed를 직접 출력하고 프로그램을 끝낼 수 있다.만약 시작된 두 개의 수조가 26개의 자모가 부족하면 마지막에 반드시 자모가 기록되지 않고 바로 튀어나올 수도 있다.이상의 모든 장애를 피한 후에 마침내 암호를 복호화할 수 있게 되었다. 그러나 그 전에 우리는 구조체 수조를 정렬하고 A~Z의 순서에 따라 출력해야 한다. 이렇게 하면 우리가 다시 출력할 때 매우 편리하고 적지 않은 시간을 절약할 수 있다. 이 문제는 거품 정렬을 직접 사용할 수 있고 빠른 배열 같은 조작을 하지 않아도 된다.이후에 비밀번호에 따라 우리가 정리한 사전을 출력할 수 있습니다. 이 문제는 AC를 완성합니다.삭제선 포맷 미끄러졌어요~~

좋은 웹페이지 즐겨찾기