jother 인 코딩

5330 단어 알고리즘
이 경기 에서 온 모든 앤 리..
javascript 용![] + - * 0 ~ 1000 을 나타 내 는 숫자
인 코딩 길이 가 75 자 를 초과 하지 않 습 니 다.
샘플:
+![]
+!![]

그리고 이 블 로 그 를 찾 으 세 요.
jother 인 코딩 의 신기 한 것 을 발견 했다.[] 익명 함수 입 니 다. + 0 으로, ! false 로...
//chrome console  
[]
> []
+[]
> 0
![]
> false

그럼 ![] 하나 더!트 루 일 거 예요. 그리고 플러스 + 가 1 이에 요.
당연히 +[] 앞 에 하나 더!1 이 될 수도 있어 요.
//chrome console  
!+[]
> true
+!+[]
> 1
+!![]
> 1

일생 만물
//             0~9
"+[]",                                            //0
"+!![]",                                           //1
"!![]+!![]",                                       //2
"!![]+!![]+!![]",                                  //3
"!![]+!![]+!![]+!![]",                             //4
"!![]+!![]+!![]+!![]+!![]",                        //5
"!![]+!![]+!![]+!![]+!![]+!![]",                   //6
"!![]+!![]+!![]+!![]+!![]+!![]+!![]",              //7
"!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]",         //8
"!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]"     //9

근 데 이 문제 에 대해 서 는 글자 수 제한 이 있어 서...
75 글자... sublime 으로 위 에 테스트 를 해 봤 는데 9 만 45 글자 가 나 왔어요.
그런데 구 글 은 한 사이트 에 가서... 괄호 로 jother 인 코딩 을 만 들 었 어 요.
해 봤 는데 괜 찮 은 거 죠?
그래서 하나의 생각 은 맞 춤 법 을 통 해 세 자릿수 를 실현 하 는 것 이다.
[+!![]+[]]+[!![]+!![]+[]]+[!![]+!![]+!![]+[]]
"123"

그러나 앞에서 언급 했 듯 이 9 만 45 글자 가 있 는데 999 는 이런 전환 을 통 해()
길이 가 딱 150 으로 원래 의 두 배 [] 입 니 다.
그리고 곱셈 기호 와 뺄셈 도 쓸 수 있어 요.
그래서 999 는 1000 - 1 이 라 고 할 수 있어 요.[!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+[]]+[!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+[]]+[!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+[]]
이렇게 하면 49 글자 밖 에 없어 요.
분명히 C + + 가 이 루어 질 수 있 는...
10 을 곱 하기 보 다 는 0 을...
  • 곱셈 최적화
  • 2 * 2 생 성 된 4 대 4 가 길 어 요.
    2 * 3 생 성의 6 대 1 +... + 1 생 성의 6 단 (한 바이트)
    2 * 4 생 성의 8 대 1 +... + 1 생 성의 8 단[+!![]+[]]+[+[]+[]]+[+[]+[]]+[+[]+[]]-[+!![]+[]] 34
    3 * 3 생 성 된 9 대 1 + 1 +... + 1 생 성 된 9 가 짧 습 니 다.[!![]+!![]]*[!![]+!![]+!![]] 35 글자 밖 에 없어 요.
  • 감법 최적화
  • 10 - 1, 10 - 2, 10 - 3 이 더 작 아 요.[!![]+!![]]*[!![]+!![]+!![]+!![]] [!![]+!![]+!![]]*[!![]+!![]+!![]] 28 [+!![]]+[+[]]-[+!![]+!![]+!![]] 20
    그래서 구 조 를 정리 해 보도 록 하 겠 습 니 다.
  • //0,1,2,3,4,5      
    +[]                                            //0
    +!![]                                          //1
    !![]+!![]                                      //2
    !![]+!![]+!![]                                   //3
    !![]+!![]+!![]+!![]                            //4
    !![]+!![]+!![]+!![]+!![]                       //5
    //6 = 2 * 3
    [!![]+!![]]*[!![]+!![]+!![]]                   //6
    
    //7 = 10 - 3 8 = 10 - 2,9 = 10 - 1 
    
    [+!![]]+[+[]]-[+!![]+!![]+!![]]                //7
    [+!![]]+[+[]]-[+!![]+!![]]                       //8
    [+!![]]+[+[]]-+!![]                              //9
    
    //10 = [1] + 0
  • 덧셈 은 추가 할 필요 가 없다 [+!![]]+[+[]]-[+!![]+!![]] cost = 1
  • 감법 은 뒤에 괄호 를 넣 어야 한다.
  • dp[a][b] = dp[a]+dp[b]+3
  • b 는 1 시 + 1
  • 조합 / 곱셈 을 할 때 는 밖에서 [+!![]]+[+[]]-+!![] 를 더 해서 이 루어 져 야 한다.
  • dp[a][b] = dp[a]+dp[b]+5
  • a 또는 b 는 1 시 + 3
  • a = b = = 1 시 + 1
  • 그러나 맞 춤 법 다음 에 문자열 이 고 + [] 를 보충 하여 원 을 숫자 로 바 꿔 야 하기 때문에 + 3

  • 그래서 이것 은 문자열 처리 의 동적 계획 입 니 다 =
    그래도 75 의 요 구 를 충족 시 키 지 못 하 는 것 같 아서 분해 인수 가 필요 합 니 다 =
    예컨대 777 = [] = []첫 번 째 분해 길 이 는 105 이 고 두 번 째 는 7 * 111 길이 가 59 로 요 구 를 만족 시 킵 니 다.
    다음 DP 절 차 를 채 울 시간 이 있 으 면 완전 가방 의 여러 번 최적화 된 것 같 습 니 다.

    좋은 웹페이지 즐겨찾기