4
a
의 항목은 _1
또는 1
입니다.J : 목록의 항목 간 부호 변경 횟수
a =: 1 _1 _1 1 _1
a
3 부호 변화가 있습니다 : 나는 looplessly을 계산하려면 어떻게
1, -1, -1, 1, -1
Λ Λ Λ
here and here
은?
a
의 항목은 _1
또는 1
입니다.J : 목록의 항목 간 부호 변경 횟수
a =: 1 _1 _1 1 _1
a
3 부호 변화가 있습니다 : 나는 looplessly을 계산하려면 어떻게
1, -1, -1, 1, -1
Λ Λ Λ
here and here
은?
당신은 그들이 ~:/
차이가 있는지 확인, 2 v\
와 페어링과 합계 +/
을 :
+/ 2 ~:/\ a
3
2 ~:/\ 1 1 1 _1 _1 _1 1 _1 1
0 0 1 0 0 1 1 1
+/2 ~:/\ 1 1 1 _1 _1 _1 1 _1 1
4
편집
아니면 축소 }:
을 줄 및 a
의 }.
을 참수하고 비교하지만, 수 이는 덜 효율적입니다.
+/(}: ~: }.) a
숫자가 1 _1 이외 될 수 있다면,
2 ~:&*/\ _2 4 3 _1 _3 1
1 0 1 0 1
감사합니다. 아주 좋은 프로그램. –
'+/@ (} : ~ :}}이'+/@ (2 & (~ :/\))'보다 비효율적 인 이유를 설명해 주시겠습니까? –
주로 '2 f/\ y'는 [special code] (http://www.jsoftware.com/help/release/infix2a.htm)에서 지원되기 때문에 주로 사용됩니다. 또 다른 한가지는 참수가 비싸다는 것입니다 (시간과 공간 모두에서). 첫 번째 방법으로 기호 변경 횟수를 세는 것보다 큰 'a'를 그냥 치는 것보다 더 많은 작업이 필요합니다. 큰 임의의'a' ('a = : 1 _1 {~? 1e6 $ 2')를 만들고 timespacex를 사용하여 그것을 테스트 할 수 있습니다. – Eelvex