Duzeltme:
Eger sadece $i=j$ icin butun permutasyonlari ariyorsan su is gorur.
ClearAll["Global`*"]
toplamPermPlot[n_, i_, j_, plot_ : 0] := Module[{}, SeedRandom@2;
rotate90 = Reverse@Transpose@# &;
rotate180 = Reverse@Map[Reverse]@# &;
rotate270 = Transpose@# &;
list0 = Flatten@{ConstantArray[0, j - n], ConstantArray[1, n]};
list = DeleteDuplicates@
RandomChoice[Permutations[list0, {j}], {1000000, i}];
list2 = Subsets[list, {2}];
s = {};
istenmeyen = DeleteDuplicates@Last@Table[
Which[
i == j,
If[
SameQ @@ {list2[[k, 1]], rotate90@list2[[k, 2]]} ||
SameQ @@ {list2[[k, 1]], rotate180@list2[[k, 2]]} ||
SameQ @@ {list2[[k, 1]], rotate270@list2[[k, 2]]},
AppendTo[s, list2[[k, 2]]], Nothing],
i != j,
If[SameQ @@ {list2[[k, 1]], rotate180@list2[[k, 2]]},
AppendTo[s, list2[[k, 2]]], Nothing]], {k, Length@list2}];
istenen = Complement[list, istenmeyen];
Which[plot == 0, Length@istenen, plot == 1,
p1 = ArrayPlot[#, Mesh -> True, ImageSize -> 50, Frame -> True,
FrameStyle -> Green] & /@ istenen;
p2 = ArrayPlot[#, Mesh -> True, ImageSize -> 50, Frame -> True,
FrameStyle -> Red] & /@ istenmeyen;
Row[{Labeled[Framed@Multicolumn@p1,
Framed["Toplam Permustasyon=" <> ToString@Length@istenen], Top],
Framed@Multicolumn@p2}, Spacer[1]]]]
toplamPermPlot[1, 2, 3]
6
toplamPermPlot[1, 2, 3, 1](*cizmek icin 4. arguman 1 olmali*)
Table[toplamPermPlot[1, k, k], {k, 2, 5}]
{2, 13, 129, 1543}
$
\begin{array}{c|cccc}n=1&1&2 & 3 & 4&5\\\hline1&1&1&2&2&3 \\
2&1&2 & 6 & 10& 15 \\
3&1& 4& 14 &32 &65 \\
4&1 &10 &45 & 128 &325 \\5& 1&16& 126& 512&1553 \\
\end{array}
$
Soruyu cozdugumu dusunuyorum. Bize gerek olan yesil sinirli matrislerin sayisi. Kirmizi olanlari 90, 180 veya 270 derece cevirerek yesilleri elde edebiliyoruz. Dikdorgen matrisler icin 90 veya 270 derece donduremezsin cok farkli bir sekil elde edersin.
Su linkte kod var, biraz oynayabilirsiniz.
https://www.open.wolframcloud.com/env/a14a66df-9dab-4a02-a721-9a42e498e49b
Ilk Cevap:
Yaptigim bazi deneyler sonucu su sonuclari elde ettim.
$i$ tablonun satir sayisini ve $j$ sutun sayisini gostersin. $n$ satirdaki siyah birim kare adedi olsun.
- $n=1\equiv n=j-1$ durumunda , $p$ butun permutasyonlarin sayisi olmak uzere, $p=j^i$dir.
$n=1: 1\leq i\leq5,1\leq j\leq5j$ icin $p$'ler asagida gosterilmistir. $p=j^i$ oldugu aciktir. $n=j-1$ olmasi durumunda siyahlar beyaz ve beyazlar siyah olacagindan ayni permutasyonu verir.
Genel formul soyle olmali. $n=1$ iken $1.$ satirda siyah kareyi kac farkli sekilde seceriz? $\displaystyle\binom{j}{1}$ ve bunu her bir satir icin yapariz. Yani $p=\underbrace{\displaystyle\binom{j}{1}\cdot\displaystyle\binom{j}{1}\dots\displaystyle\binom{j}{1}}_{i \;\text{tane}}=\displaystyle\binom{j}{1}^i$
$n$ icin ise $p=\underbrace{\displaystyle\binom{j}{n}\cdot\displaystyle\binom{j}{n}\dots\displaystyle\binom{j}{n}}_{i \;\text{tane}}=\displaystyle\binom{j}{n}^i$ olur.
$\begin{array}{c|ccccc}
n=1 & 1 & 2 & 3 & 4 & 5 \\\hline
1 & 1 & 2 & 3 & 4 & 5 \\
2 & 1 & 4 & 9 & 16 & 25 \\
3 & 1 & 8 & 27 & 64 & 125 \\
4 & 1 & 16& 81 & 256 & 625 \\
5 &1& 32 & 243 &1024 & 3125 \\
\end{array}$
$\begin{array}{c|ccc}
n=2&1& 2 & 3 & 4 \\\hline
1 & 0&1 & 3 & 6 \\
2 & 0 &1& 9 & 36 \\
3 &0& 1&27 & 216 \\
4 &0&1 & 81 & 1296 \\
\end{array}$
f[n_, i_, j_] := Module[{},
SeedRandom@2;
list = Flatten@{ConstantArray[0, j - n], ConstantArray[1, n]};
list =
Length@DeleteDuplicates@
RandomChoice[Permutations[list, {j}], {1000000, i}]];
f[2, 3, 4]
216