본문 바로가기

Solutions/테슬라's Solution

PKU 1298. The Hardest Probelm Ever [AC]


네 갑자기 몰아치는 문제제출입니다.
음 ENDOFINPUT를 입력할 때까지 while루프를 돌립니다.
우선 order를 입력 받습니다
START를 하면 문자열을 입력받습니다.
END를 입력하면 입력받은 문자열을 변환합니다.
F부터 Z까지는 5개씩 앞으로 밀어주면 됩니다...
음 하지만 A부터 E까지는 Z부분으로 바뀌어야 하겠죠?
in[i]-'E'를 해줍니다. A라면 'A'-'E'=4겠죠? Z에서 4개만큼 왼쪽문자로 움직입니다.
A라면 V가 나오겠죠
왜 4개만큼 움직이는고 하니...
A->Z->Y->X->W->V->...
일때 Z까지 포함해서 세야 했기 때문에 Z부터 시작할 경우 하나 덜 옆으로 움직여야겠죠,,,


음 일단 프로그램 설명은 이쯤까지하고...
코드를 봐주세요. 쪼기 위쪽에 주석처리된 부분이요.
fflush(stdin)을 썼죠...네...Dlbo군이 지적해 주셨어요...
PKU는 이거쓰면 안된다네요...버퍼를 날려서 입력값이 안남는다네요....
그것도 모르고 썼다가...TLE떠가지고 괜히 프로그램 싹 다 갈아버리는 만행을 저질러버렸어요...
다음부턴 조심해야겠어요...