[아카이브] 순수수학, 물리학, 화학 등 : 거래와 무관한 두뇌 트레이닝 퍼즐 - 페이지 509

 
Mischek :

하지 않을 것이다. 벌레도 눈이 부풀어 오릅니다. 그리고 이것은 위협적입니다.

우와. 내렸어. 진정한 자살 전문가.

 

하키 선수들은 놓아주고 싶지 않았습니다. 우리 하품에 대한 어리석은 희망으로 나는 철저한 대본을 썼습니다. 또한 "존재하지 않음"이라고 말합니다.

아마도 대본에서 무엇이 하품을 했습니까? 원하시는 분들은 확인 가능합니다.

// 스크립트를 수정했습니다. 비판적 관절이 있었다. 결과는 변경되지 않았습니다.

파일:
hockey_1.mq5  2 kb
 
MetaDriver :

하키 선수들은 놓아주고 싶지 않았습니다. 우리 하품에 대한 어리석은 희망으로 나는 철저한 대본을 썼습니다. 또한 "존재하지 않음"이라고 말합니다.

아마도 대본에서 무엇이 하품을 했습니까? 원하시는 분들은 확인 가능합니다.

// 스크립트를 수정했습니다. 비판적 관절이 있었다. 결과는 변경되지 않았습니다.

나도 나중에 똑같이 했다. 대답은 동일합니다! :)))
 
MaxZ :
나도 나중에 똑같이 했다. 대답은 동일합니다! :)))
실례가 되지 않는다면 출처를 밝혀주세요. 알고리즘에 관심이 있습니다. 개인사정으로 가능합니다.
 

이마의 알고리즘. 아무 생각 없이 썼습니다(3~5분). 오랫동안 카운트! :디

 for ( int A6 = 1 ; A6 <= 6 ; A6++)
for ( int A5 = 1 ; A5 <= 6 ; A5++)
for ( int A4 = 1 ; A4 <= 6 ; A4++)
for ( int A3 = 1 ; A3 <= 6 ; A3++)
for ( int A2 = 1 ; A2 <= 6 ; A2++)
for ( int A1 = 1 ; A1 <= 6 ; A1++)
for ( int B6 = 1 ; B6 <= 6 ; B6++)
for ( int B5 = 1 ; B5 <= 6 ; B5++)
for ( int B4 = 1 ; B4 <= 6 ; B4++)
for ( int B3 = 1 ; B3 <= 6 ; B3++)
for ( int B2 = 1 ; B2 <= 6 ; B2++)
for ( int B1 = 1 ; B1 <= 6 ; B1++)
   if (A6 != A5 && A6 != A4 && A6 != A3 && A6 != A2 && A6 != A1
                && A5 != A4 && A5 != A3 && A5 != A2 && A5 != A1
                            && A4 != A3 && A4 != A2 && A4 != A1
                                        && A3 != A2 && A3 != A1
                                                    && A2 != A1
    && B6 != B5 && B6 != B4 && B6 != B3 && B6 != B2 && B6 != B1
                && B5 != B4 && B5 != B3 && B5 != B2 && B5 != B1
                            && B4 != B3 && B4 != B2 && B4 != B1
                                        && B3 != B2 && B3 != B1
                                                    && B2 != B1
    && A6 != B6 && A5 != B5 && A4 != B4
    && A3 != B3 && A2 != B2 && A1 != B1)
   {
      int A = A6* 100000 +A5* 10000 +A4* 1000 +A3* 100 +A2* 10 +A1;
      int B = B6* 100000 +B5* 10000 +B4* 1000 +B3* 100 +B2* 10 +B1;
      if ( MathMod (A, B) == 0 )
         Print (A6,A5,A4,A3,A2,A1, "/" ,B6,B5,B4,B3,B2,B1, "=" ,A/B);
   }

추신: 그러면 B 번째 어레이에 대해 훨씬 적은 반복 작업을 수행할 수 있다는 것을 깨달았습니다...

 
이해했습니다 감사합니다!
 
MaxZ :

이마의 알고리즘. 아무 생각 없이 썼습니다(3~5분). 오랫동안 카운트! :디

추신: 그러면 B 번째 어레이에 대해 훨씬 적은 반복을 수행할 수 있다는 것을 깨달았습니다...

Vapche는 이 열거를 최적화할 수 있는 방법과 범위에 관심이 있습니다.

여기에 브레이크 기계에 ~ 875ms가 있습니다. (당신은 17516ms가 있습니다)

다시 10배 더 빨리 변태시키는 방법은 무엇입니까?

(1) 불필요한 열거를 차단하고, (2) 검증 속도를 높이는 두 가지 준비가 필요합니다.

어떤 아이디어?

// 원하시는 분들을 초대합니다. 다음 작업에 적합합니다.

 
MetaDriver :

// 원하시는 분들을 초대합니다. 다음 작업에 적합합니다.

문제는 저도 코드를 작성할 때 고민했습니다! :))) 제공하고 싶었습니다. 하지만 새로운 주제를 만들어야 했기 때문에 사라졌습니다. 나는 코드의 속도를 높이는 방법을 알고 있습니다(그러나 매우 아름답게 나오지는 않습니다). 하지만 속도를 높일 뿐만 아니라 아름답게 만들고 싶습니다!


메타드라이버 :

Vapche는 이 열거를 최적화할 수 있는 방법과 범위에 관심이 있습니다.

내 기계도 끔찍합니다... 복잡한 Expert Advisor를 테스트할 수는 없지만 복잡하지 않은 간단한 Expert Advisor는 최적화하는 데 오랜 시간이 걸립니다! :디


메타드라이버 :

여기에 브레이크 기계에 ~ 875ms가 있습니다. (당신은 17516ms가 있습니다)

다시 10배 더 빨리 변태시키는 방법은 무엇입니까?

(1) 불필요한 열거를 차단하고, (2) 검증 속도를 높이는 두 가지 준비가 필요합니다.

어떤 아이디어?

여분의 열거를 잘라내면 실행 시간이 결과에 가까워 질 것이라고 생각합니다 (숫자의 차이를주의 깊게보고 "거의"생각했습니다)! 아이디어에 관해서는, 나는 계속 생각합니다.

 

그리고 복잡한 36겹 테스트 조건으로 구성된 if를 간단한 조건으로 36 ifs로 쪼개어 내 코드 속도를 높일 수 있습니다! :)))

코드 속도가 눈에 띄게 빨라질 것이라고 생각하지만 컴파일로 인해 발생하는 기계 명령어를 확실히 이해해야 합니다.

그리고 일반적으로 성능에 대한 주제는 항상 다른 어떤 것보다 나를 걱정하게 했습니다.

 
MaxZ : 그리고 일반적으로 성능에 대한 주제는 다른 무엇보다 항상 저를 걱정하게 합니다.
나는 계속 및 break 문 을 사용하는 것을 좋아하지 않지만, 특히 mql에서 중첩이 작동하지 않을 수 있는 경우 36배가 도움이 될 수 있습니다.