a) pod żadnym pozorem żadna z dwójek nie sąsiadowała po boku z inną dwójką.
b) "sąsiadowanie po przekątnej" np.
112
121
211
też najlepiej, żeby było jak najmniejsze w przeliczeniu na jedną dwójkę
c) jeśli a i b są spełnione i sąsiadowanie po przekątnej mamy najmniejsze w przeliczeniu na jedną dwójkę, to jeszcze dodatkowym warunkiem niech będzie to, że lepsze jest aby np. mamy dwie dwójki i korzystniejsze będzie jeśli obie będą sąsiadowały po przekątnej z trzema innymi dwójkami, aniżeli jedna dwójka będzie sąsiadować z dwoma dwójkami po przekątnej, a druga dwójka z czterema dwójkami po przekątnej.
Chodzi o to, że mam rozłożyć cząsteczki w modelowaniu molekularnym i nie chcę, żeby cząsteczki tego samego typu oddziaływały ze sobą i agregowały.
Dodatkowo występują periodyczne warunki brzegowe. Linia pierwsza oddziałuje z dziesiątą, linie najbardziej z lewej oddziałuje z tą z prawej, no i cztery narożne cząsteczki oddziaływają ze sobą. To znaczy, że cząsteczki z prawej oddziałują z cząsteczkami z drugiej strony pudełka tak, aby zachowana była ciągłość układu.
Ja rozłożyłem to tak, nie wiem czy da się to jakoś matematycznie rozwiązać. Na żółto dałem w excelu jedynki. Na czerwono dwójki (chodzi mi o to rozłożenie i uwaga na fioletowo dałem dwójki oddziaływujące przez periodyczne warunki brzegowe.
Kod: Zaznacz cały
https://ibb.co/9bbTF7c