상사는 당신을 포함한 많은 직원들이 다른 사람들로부터 코드를 훔치는 것을 좋아한다는 것을 알게되었습니다. 그는 다른 사람으로부터 코드를 훔치는 사람들을 찾는 데 사용할 수있는 프로그램을 작성하도록 명령했습니다.
직무:
누군가 자신의 코드를 다른 곳에서 복사했는지 감지하는 프로그램 / 함수를 작성하십시오.
이 프로그램은 기존의 모든 프로그램과 두 개의 개별 입력에서 테스트해야하는 프로그램을 가져옵니다 . 편집 : 지금까지 답변이 없으므로 정규 표현식을 사용할 수 있습니다!
산출
- 그런 다음 프로그램은 도난당한 모든 코드를 공백이나 줄 바꿈으로 구분하여 출력해야합니다 . 끝에 공백이나 줄 바꿈이있을 수 있습니다.
- 10 개 이상의 연속 바이트 로 구성된 코드는 도난 당하거나 복사 된 것으로 간주됩니다 . (죄송합니다, Java 팬들!)
- 가능한 한 많이 출력해야하지만 겹치는 것이 있으면 둘 중 하나를 무시하거나 둘 다 출력 할 수 있습니다.
트위스트:
앞에서 언급했듯이 덕트 테이프 코딩도 좋아합니다. 즉, 코드의 모든 내용 을 스택 교환 사이트에서 복사하여 붙여 넣습니다. 원하는대로 (코드 블록의 코드에 국한되지 않음) 원하는만큼 복사 할 수 있습니다. (단, 10 바이트 이상) (도난 / 복사 대상으로 간주되는 것과 동일한 규칙) (이 질문 이후에 게시 된 답변은 사용되지 않을 수 있습니다.) 코드
예 :
입력 :
x = document.getElementById("ninja'd");
(첫번째 입력)
y = document.getElementById("id");
(두번째 입력)
산출:
= document.getElementById("
입력 :
foo
(첫번째 입력)
foo+bar
(두번째 입력)
출력 :
없음
입력 :
public static void main(String[] args)
(첫번째 입력)
public static void main(String[] args)
(두번째 입력)
산출:
main(String[] args)
입력 :
for(var i=0; i<x.length; i++){}
(첫번째 입력)
for(var i=0; i<oops.length; i++){break;}
(두번째 입력)
산출:
for(var i=0; i<
.length; i++){
또는
for(var i=0; i< .length; i++){