Logo
(追記) (追記ここまで)

15635번 - IDN Homograph Attack 번외

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 256 MB226892637.143%

문제

세상에는 많은 종류의 문자가 있다. 이를 모든 디지털 장비에서 똑같이 다룰 수 있도록 표준 인코딩 방식인 유니코드가 만들어졌고 현재도 계속해서 업데이트가 진행되고 있다. 그 과정에서 비슷하게 생긴 문자 혹은 모양이 완전히 같은 문자가 발생하게 되었고, 이를 이용한 도메인 동형이의자 공격(IDN homograph attack)이라는 부작용도 발생하게 되었다.

특히 한자의 경우 여러 나라에서 사용하고 각 나라 별로 사용하는 방식에 차이가 있는 등의 이유로 동형이의자가 많다. 예를 들어 탕수육의 한자 표기인 '糖水肉'의 경우, 첫 번째 글자인 糖(U+FA03)는 糖(U+7CD6)과 모양이 같고 두 번째 글자인 水(U+6C34)는 水(U+2F54)와, 세 번째 글자인 肉(U+8089)은 肉(U+2F81)과 모양이 같기 때문에 이 중에 하나라도 다른 글자로 변환된다면 다른 문자열이지만 사용자 입장에서는 구분이 사실상 불가능하기 때문에 혼란을 줄 수 있다.

문자열이 입력되었을 때, 이 문자열의 일부 문자를 다른 문자로 바꿔서 똑같이 생긴 다른 문자열을 만들 수 있는지를 찾는 프로그램을 작성해보자.

입력

입력은 한 줄로 구성된다. 입력되는 문자는 모두 유니코드 기본 다국어 평면에 정의된 문자임이 보장되며, 문자열의 길이는 1,000 이하이다.

출력

이 문자열의 일부 문자를 바꿔서 똑같이 생긴 다른 문자열로 바꿀 수 있으면 Yes, 아니면 No를 출력한다. 여기에서 똑같이 생긴 문자는 Noto Sans CJK KR로 표현되는 모양이 같음을 의미한다.

제한

예제 입력 1

糖水肉

예제 출력 1

Yes

예제 입력 2

乾烹鷄

예제 출력 2

No

힌트

출처

Contest > BOJ User Contest > 구데기컵 > 제1회 구데기컵 無번

  • 문제를 만든 사람: bryanj

채점 및 기타 정보

  • 예제는 채점하지 않는다.
(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /