Обсуждение участника:VolkovNikita94: различия между версиями
Перейти к навигации
Перейти к поиску
ASA (обсуждение | вклад) Нет описания правки |
|||
| (не показаны 23 промежуточные версии 4 участников) | |||
| Строка 1: | Строка 1: | ||
<tabs> | |||
=== | <tab name="Специальный_пример_1_n4"> | ||
{{#widget:Algoviewer | |||
|url=XML_task_001/Example_001.html | |||
|width=1200 | |||
|height=800 | |||
|border=1 | |||
}} | |||
<br> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
C++ реализация: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "c++"> | |||
for (int i = 1; i <= n; ++i) { | |||
C[i] = C[i - 2]; | |||
} | |||
for (int i = 1; i <= n; ++i) { | |||
for (int j = 1; j <= n; ++j) { | |||
B[i][j] = B[i][j] + C[i]; | |||
} | |||
} | |||
for (int i = 1; i <= n; ++i) { | |||
for (int j = 1; j <= n; ++j) { | |||
for (int k = 1; k <= n; ++k) { | |||
A[i][j][k] = A[i][j][k] + A[i - 1][j][1]; | |||
} | |||
} | |||
} | |||
</source> | |||
</div> | |||
</div> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
Новая разметка: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "xml"> | |||
<algo> | |||
<params> | |||
<param name = "N" type = "int"></param> | |||
</params> | |||
<block id = "0" dims = "1"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<vertex condition = "" type = "0"> | |||
<in src = “i – 2”></in> | |||
</vertex> | |||
</block> | |||
<block id = "1" dims = "2"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..N"></arg> | |||
<vertex condition = "" type = "0"> | |||
<in bsrc = "0" src = "i"></in> | |||
</vertex> | |||
</block> | |||
<block id = "2" dims = "3"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..N"></arg> | |||
<arg name = "k" val = "1..N"></arg> | |||
<vertex condition = "(k == 1) || (i == 1)" type = "0"> | |||
</vertex> | |||
<vertex condition = "(k > 1) && (i > 1)" type = "0"> | |||
<in src = “1, j, 1”></in> | |||
</vertex> | |||
</block> | |||
</algo> | |||
</source> | |||
</div> | |||
</div> | |||
</tab> | |||
<tab name="Специальный_пример_1_n8"> | |||
{{#widget:Algoviewer | |||
|url=XML_task_001_n8/Example_001.html | |||
|width=1200 | |||
|height=800 | |||
|border=1 | |||
}} | |||
<br> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
C++ реализация: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "c++"> | |||
for (int i = 1; i <= n; ++i) { | |||
C[i] = C[i - 2]; | |||
} | |||
for (int i = 1; i <= n; ++i) { | |||
for (int j = 1; j <= n; ++j) { | |||
B[i][j] = B[i][j] + C[i]; | |||
} | |||
} | |||
for (int i = 1; i <= n; ++i) { | |||
for (int j = 1; j <= n; ++j) { | |||
for (int k = 1; k <= n; ++k) { | |||
A[i][j][k] = A[i][j][k] + A[i - 1][j][1]; | |||
} | |||
} | |||
} | |||
</source> | |||
</div> | |||
</div> | |||
</tab> | |||
== | <tab name="Специальный_пример_2_n4"> | ||
{{#widget:Algoviewer | |||
|url=XML_task_002/Example_001.html | |||
|width=1200 | |||
|height=800 | |||
|border=1 | |||
}} | |||
<br> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
C++ реализация: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "c++"> | |||
for (int i = 1; i <= n; ++i) { | |||
C[i] = C[i] * e; | |||
} | |||
for (int i = 1; i <= n; ++i) { | |||
for (int j = 1; j <= n; ++j) { | |||
B[i][j] = B[i - 1][j - 1]; | |||
} | |||
} | |||
for (int i = 1; i <= n; ++i) { | |||
for (int j = 1; j <= n; ++j) { | |||
for (int k = 1; k <= n; ++k) { | |||
A[i][j][k] = A[i][j][k] + A[i][j - 1][k - 2]; | |||
} | |||
A[i][j][n] = A[i][j][n] + B[i][j]; | |||
} | |||
} | |||
</source> | |||
</div> | |||
</div> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
Новая разметка: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "xml"> | |||
<algo> | |||
<params> | |||
<param name = "N" type = "int"></param> | |||
</params> | |||
<block id = "0" dims = "1"> | |||
<arg name = "I" val = "1..N"></arg> | |||
<vertex condition = "" type = "1"> | |||
</vertex> | |||
</block> | |||
<block id = "0" dims = "2"> | |||
<arg name = "I" val = "1..N"></arg> | |||
<arg name = "J" val = "1..N"></arg> | |||
<vertex condition = "" type = "1"> | |||
<in src = "I - 1, J - 1"></in> | |||
</vertex> | |||
</block> | |||
<block id = "2" dims = "3"> | |||
<arg name = "I" val = "1..N"></arg> | |||
<arg name = "J" val = "1..N"></arg> | |||
<arg name = "K" val = "1..N"></arg> | |||
<vertex condition = "K == 1" type = "2"> | |||
<in bsrc = "1" src = "I, J"></in> | |||
<in src = "I - 1, J, K + 2"></in> | |||
</vertex> | |||
<vertex condition = "K > 1" type = "1"> | |||
<in src = "I - 1, J, K + 2"></in> | |||
</vertex> | |||
</block> | |||
</algo> | |||
</source> | |||
</div> | |||
</div> | |||
</tab> | |||
<tab name="Специальный_пример_2_n8"> | |||
{{#widget:Algoviewer | |||
|url=XML_task_002_n8/Example_001.html | |||
|width=1200 | |||
|height=800 | |||
|border=1 | |||
}} | |||
<br> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
C++ реализация: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "c++"> | |||
for (int i = 1; i <= n; ++i) { | |||
C[i] = C[i] * e; | |||
} | |||
for (int i = 1; i <= n; ++i) { | |||
for (int j = 1; j <= n; ++j) { | |||
B[i][j] = B[i - 1][j - 1]; | |||
} | |||
} | |||
for (int i = 1; i <= n; ++i) { | |||
for (int j = 1; j <= n; ++j) { | |||
for (int k = 1; k <= n; ++k) { | |||
A[i][j][k] = A[i][j][k] + A[i][j - 1][k - 2]; | |||
} | |||
A[i][j][n] = A[i][j][n] + B[i][j]; | |||
} | |||
} | |||
</source> | |||
</div> | |||
</div> | |||
</tab> | |||
<tab name="Преобразование_фурье"> | |||
{{#widget:Algoviewer | |||
|url=XML_Fourier/Example_001.html | |||
|width=1200 | |||
|height=800 | |||
|border=1 | |||
}} | |||
<br> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
Новая разметка: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "xml"> | |||
<algo> | |||
<params> | |||
<param name = "N" type = "int" value = "3"></param> | |||
</params> | |||
<block id = "0" dims = "2"> | |||
<arg name = "I" val = "1..N"></arg> | |||
<arg name = "J" val = "1..2^N"></arg> | |||
<vertex condition = "(J - 1) % (2^I) < 2^(I - 1)" type = "1"> | |||
<in src = "I - 1, J"></in> | |||
<in src = "I - 1, J + 2^(I -1)"></in> | |||
</vertex> | |||
<vertex condition = "(J - 1) % (2^I) >= 2^(I - 1)" type = "2"> | |||
<in src = "I - 1, J"></in> | |||
<in src = "I - 1, J - 2^(I - 1)"></in> | |||
</vertex> | |||
</block> | |||
</algo> | |||
</source> | |||
</div> | |||
</div> | |||
</tab> | |||
</tabs> | |||
== Тестовые варианты 2020 == | |||
<tabs> | |||
<tab name="Вариант_01"> | |||
{{#widget:Algoviewer | |||
|url=Variant_01/Variant_01.html | |||
|width=1200 | |||
|height=800 | |||
|border=1 | |||
}} | |||
<br> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
Новая разметка: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "xml"> | |||
<algo> | |||
<params> | |||
<param name = "N" type = "int"></param> | |||
<param name = "M" type = "int"></param> | |||
</params> | |||
<block id = "0" dims = "1"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<vertex condition = "" type = "1"> | |||
<in src = "i - 2"></in> | |||
</vertex> | |||
</block> | |||
<block id = "1" dims = "2"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..M"></arg> | |||
<vertex condition = "" type = "1"> | |||
<in src = "i - 1, j - 1"></in> | |||
<in bsrc = "0" src = "i"></in> | |||
</vertex> | |||
</block> | |||
<block id = "2" dims = "3"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..M"></arg> | |||
<arg name = "k" val = "1..N-1"></arg> | |||
<vertex condition = "(j == 1) and (k == 1)" type = "1"> | |||
<in bsrc = "1" src = "i, M"></in> | |||
</vertex> | |||
<vertex condition = "(j > 1) or (k > 1)" type = "1"> | |||
<in src = "i - 1, j, 1"></in> | |||
</vertex> | |||
</block> | |||
</algo> | |||
</source> | |||
</div> | |||
</div> | |||
</tab> | |||
<tab name="Вариант_02"> | |||
{{#widget:Algoviewer | |||
|url=Variant_02/Variant_02.html | |||
|width=1200 | |||
|height=800 | |||
|border=1 | |||
}} | |||
<br> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
Новая разметка: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "xml"> | |||
<algo> | |||
<params> | |||
<param name = "N" type = "int"></param> | |||
<param name = "M" type = "int"></param> | |||
</params> | |||
<block id = "0" dims = "1"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<vertex condition = "" type = "1"> | |||
<in src = "i - 1"></in> | |||
</vertex> | |||
</block> | |||
<block id = "1" dims = "2"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..M"></arg> | |||
<vertex condition = "" type = "1"> | |||
<in src = "i - 2, j"></in> | |||
</vertex> | |||
</block> | |||
<block id = "2" dims = "3"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..M"></arg> | |||
<arg name = "k" val = "1..N-1"></arg> | |||
<vertex condition = "(j == 1) and (k == 1)" type = "1"> | |||
<in bsrc = "0" src = "i"></in> | |||
<in bsrc = "1" src = "i, M"></in> | |||
</vertex> | |||
<vertex condition = "(j > 1) or (k > 1)" type = "1"> | |||
<in src = "i, j - 1, 1"></in> | |||
</vertex> | |||
</block> | |||
</algo> | |||
</source> | |||
</div> | |||
</div> | |||
</tab> | |||
<tab name="Вариант_03"> | |||
{{#widget:Algoviewer | |||
|url=Variant_03/Variant_03.html | |||
|width=1200 | |||
|height=800 | |||
|border=1 | |||
}} | |||
<br> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
Новая разметка: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "xml"> | |||
<algo> | |||
<params> | |||
<param name = "N" type = "int"></param> | |||
<param name = "M" type = "int"></param> | |||
</params> | |||
<block id = "0" dims = "1"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<vertex condition = "" type = "1"> | |||
</vertex> | |||
</block> | |||
<block id = "1" dims = "2"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..M"></arg> | |||
<vertex condition = "" type = "1"> | |||
<in src = "i, j - 2"></in> | |||
<in bsrc = "0" src = "i"></in> | |||
</vertex> | |||
</block> | |||
<block id = "2" dims = "3"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..M"></arg> | |||
<arg name = "k" val = "1..N-1"></arg> | |||
<vertex condition = "(j == 1) and (k == 1)" type = "1"> | |||
<in bsrc = "1" src = "i, M"></in> | |||
</vertex> | |||
<vertex condition = "(j > 1) or (k > 1)" type = "1"> | |||
<in src = "i, j - 1, k"></in> | |||
</vertex> | |||
</block> | |||
</algo> | |||
</source> | |||
</div> | |||
</div> | |||
</tab> | |||
<tab name="Вариант_04"> | |||
{{#widget:Algoviewer | |||
|url=Variant_04/Variant_04.html | |||
|width=1200 | |||
|height=800 | |||
|border=1 | |||
}} | |||
<br> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
Новая разметка: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "xml"> | |||
<algo> | |||
<params> | |||
<param name = "N" type = "int"></param> | |||
<param name = "M" type = "int"></param> | |||
</params> | |||
<block id = "0" dims = "1"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<vertex condition = "" type = "1"> | |||
<in src = "i - 1"></in> | |||
</vertex> | |||
</block> | |||
<block id = "1" dims = "2"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..M"></arg> | |||
<vertex condition = "" type = "1"> | |||
<in src = "i - 1, j - 1"></in> | |||
<in bsrc = "0" src = "i"></in> | |||
</vertex> | |||
</block> | |||
<block id = "2" dims = "3"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..M"></arg> | |||
<arg name = "k" val = "1..N-1"></arg> | |||
<vertex condition = "(j == 1) and (k == 1)" type = "1"> | |||
<in bsrc = "1" src = "i, M"></in> | |||
</vertex> | |||
<vertex condition = "(j > 1) or (k > 1)" type = "1"> | |||
<in src = "i - 1, j, k"></in> | |||
</vertex> | |||
</block> | |||
</algo> | |||
</source> | |||
</div> | |||
</div> | |||
</tab> | |||
</tabs> | |||
== Параметрика Пакуля == | |||
<tabs> | |||
<tab name="Параметрика"> | |||
{{#widget:Algoviewer | |||
|url=Variant_parametric/Variant_par.html | |||
|width=1200 | |||
|height=800 | |||
|border=1 | |||
}} | |||
<br> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
Новая разметка: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "xml"> | |||
<algo> | |||
<params> | |||
<param name = "N" type = "int"></param> | |||
<param name = "M" type = "int"></param> | |||
<aparam name = "p0" type = "int"></aparam> | |||
<aparam name = "p1" type = "int"></aparam> | |||
<aparam name = "p2" type = "int"></aparam> | |||
<aparam name = "p3" type = "int"></aparam> | |||
<aparam name = "p4" type = "int"></aparam> | |||
<aparam name = "p5" type = "int"></aparam> | |||
</params> | |||
<block id = "0" dims = "1"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<vertex condition = "" type = "1"> | |||
<in src = "i + p0"></in> | |||
</vertex> | |||
</block> | |||
<block id = "1" dims = "2"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..M"></arg> | |||
<vertex condition = "p3 == 0" type = "1"> | |||
<in src = "i + p1, j + p2"></in> | |||
</vertex> | |||
<vertex condition = "p3 == 1" type = "1"> | |||
<in src = "i + p1, j + p2"></in> | |||
<in bsrc = "0" src = "i"></in> | |||
</vertex> | |||
</block> | |||
<block id = "2" dims = "3"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..M"></arg> | |||
<arg name = "k" val = "1..N-1"></arg> | |||
<vertex condition = "(j == 1) and (k == 1) and (p3 == 1)" type = "1"> | |||
<in bsrc = "1" src = "i, M"></in> | |||
</vertex> | |||
<vertex condition = "(j == 1) and (k == 1) and (p3 == 0)" type = "1"> | |||
<in bsrc = "1" src = "i, M"></in> | |||
<in bsrc = "0" src = "i"></in> | |||
</vertex> | |||
<vertex condition = "((j > 1) or (k > 1)) and (p4 == 1)" type = "1"> | |||
<in src = "i - 1 * (1 - p5), j - 1 * p5, 1"></in> | |||
</vertex> | |||
<vertex condition = "((j > 1) or (k > 1)) and (p4 == 0)" type = "1"> | |||
<in src = "i - 1 * (1 - p5), j - 1 * p5, k"></in> | |||
</vertex> | |||
</block> | |||
</algo> | |||
</source> | |||
</div> | |||
</div> | |||
</tab> | |||
<tab name="Пакулев"> | |||
{{#widget:Algoviewer | |||
|url=Variant_pakulev/Variant_pak.html | |||
|width=1200 | |||
|height=800 | |||
|border=1 | |||
}} | |||
<br> | |||
<div class="collapser mw-collapsible mw-collapsed" style="width:1200px; overflow:auto;"> | |||
Новая разметка: | |||
<div class="mw-collapsible-content"> | |||
<source lang = "xml"> | |||
<algo> | |||
<params> | |||
<param name = "N" type = "int"></param> | |||
</params> | |||
<block id = "0" dims = "2"> | |||
<arg name = "i" val = "1..N"></arg> | |||
<arg name = "j" val = "1..N"></arg> | |||
<vertex condition = "(2 * i + j) <= (N + 1)" type = "1"> | |||
</vertex> | |||
<vertex condition = "((2 * i + j) > (N + 1)) and ((i + j) <= N)" type = "1"> | |||
<in src = "i - 1, j + 2 * (N + 1 - i - j)"></in> | |||
</vertex> | |||
<vertex condition = "((i + j) > N) and ((2 * i + j) <= (2 * N))" type = "1"> | |||
<in src = "i, j - 1 - 2 * ((i + j) - N - 1)"></in> | |||
</vertex> | |||
<vertex condition = "((2 * i + j) > (2 * N)) and ((i + j) <= (2 * N - 1))" type = "1"> | |||
<in src = "i - 1 * (2 * i + j - 2 * N), 1"></in> | |||
</vertex> | |||
<vertex condition = "((i + j) > (2 * N - 1))" type = "1"> | |||
</vertex> | |||
</block> | |||
</algo> | |||
</source> | |||
</div> | |||
</div> | |||
</tab> | |||
</tabs> | |||
Текущая версия от 18:50, 10 августа 2020
<tabs>
<tab name="Специальный_пример_1_n4">
C++ реализация:
for (int i = 1; i <= n; ++i) {
C[i] = C[i - 2];
}
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
B[i][j] = B[i][j] + C[i];
}
}
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
for (int k = 1; k <= n; ++k) {
A[i][j][k] = A[i][j][k] + A[i - 1][j][1];
}
}
}
Новая разметка:
<algo>
<params>
<param name = "N" type = "int"></param>
</params>
<block id = "0" dims = "1">
<arg name = "i" val = "1..N"></arg>
<vertex condition = "" type = "0">
<in src = “i – 2”></in>
</vertex>
</block>
<block id = "1" dims = "2">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..N"></arg>
<vertex condition = "" type = "0">
<in bsrc = "0" src = "i"></in>
</vertex>
</block>
<block id = "2" dims = "3">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..N"></arg>
<arg name = "k" val = "1..N"></arg>
<vertex condition = "(k == 1) || (i == 1)" type = "0">
</vertex>
<vertex condition = "(k > 1) && (i > 1)" type = "0">
<in src = “1, j, 1”></in>
</vertex>
</block>
</algo>
</tab>
<tab name="Специальный_пример_1_n8">
C++ реализация:
for (int i = 1; i <= n; ++i) {
C[i] = C[i - 2];
}
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
B[i][j] = B[i][j] + C[i];
}
}
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
for (int k = 1; k <= n; ++k) {
A[i][j][k] = A[i][j][k] + A[i - 1][j][1];
}
}
}
</tab>
<tab name="Специальный_пример_2_n4">
C++ реализация:
for (int i = 1; i <= n; ++i) {
C[i] = C[i] * e;
}
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
B[i][j] = B[i - 1][j - 1];
}
}
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
for (int k = 1; k <= n; ++k) {
A[i][j][k] = A[i][j][k] + A[i][j - 1][k - 2];
}
A[i][j][n] = A[i][j][n] + B[i][j];
}
}
Новая разметка:
<algo>
<params>
<param name = "N" type = "int"></param>
</params>
<block id = "0" dims = "1">
<arg name = "I" val = "1..N"></arg>
<vertex condition = "" type = "1">
</vertex>
</block>
<block id = "0" dims = "2">
<arg name = "I" val = "1..N"></arg>
<arg name = "J" val = "1..N"></arg>
<vertex condition = "" type = "1">
<in src = "I - 1, J - 1"></in>
</vertex>
</block>
<block id = "2" dims = "3">
<arg name = "I" val = "1..N"></arg>
<arg name = "J" val = "1..N"></arg>
<arg name = "K" val = "1..N"></arg>
<vertex condition = "K == 1" type = "2">
<in bsrc = "1" src = "I, J"></in>
<in src = "I - 1, J, K + 2"></in>
</vertex>
<vertex condition = "K > 1" type = "1">
<in src = "I - 1, J, K + 2"></in>
</vertex>
</block>
</algo>
</tab>
<tab name="Специальный_пример_2_n8">
C++ реализация:
for (int i = 1; i <= n; ++i) {
C[i] = C[i] * e;
}
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
B[i][j] = B[i - 1][j - 1];
}
}
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
for (int k = 1; k <= n; ++k) {
A[i][j][k] = A[i][j][k] + A[i][j - 1][k - 2];
}
A[i][j][n] = A[i][j][n] + B[i][j];
}
}
</tab>
<tab name="Преобразование_фурье">
Новая разметка:
<algo>
<params>
<param name = "N" type = "int" value = "3"></param>
</params>
<block id = "0" dims = "2">
<arg name = "I" val = "1..N"></arg>
<arg name = "J" val = "1..2^N"></arg>
<vertex condition = "(J - 1) % (2^I) < 2^(I - 1)" type = "1">
<in src = "I - 1, J"></in>
<in src = "I - 1, J + 2^(I -1)"></in>
</vertex>
<vertex condition = "(J - 1) % (2^I) >= 2^(I - 1)" type = "2">
<in src = "I - 1, J"></in>
<in src = "I - 1, J - 2^(I - 1)"></in>
</vertex>
</block>
</algo>
</tab>
</tabs>
Тестовые варианты 2020
<tabs>
<tab name="Вариант_01">
Новая разметка:
<algo>
<params>
<param name = "N" type = "int"></param>
<param name = "M" type = "int"></param>
</params>
<block id = "0" dims = "1">
<arg name = "i" val = "1..N"></arg>
<vertex condition = "" type = "1">
<in src = "i - 2"></in>
</vertex>
</block>
<block id = "1" dims = "2">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..M"></arg>
<vertex condition = "" type = "1">
<in src = "i - 1, j - 1"></in>
<in bsrc = "0" src = "i"></in>
</vertex>
</block>
<block id = "2" dims = "3">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..M"></arg>
<arg name = "k" val = "1..N-1"></arg>
<vertex condition = "(j == 1) and (k == 1)" type = "1">
<in bsrc = "1" src = "i, M"></in>
</vertex>
<vertex condition = "(j > 1) or (k > 1)" type = "1">
<in src = "i - 1, j, 1"></in>
</vertex>
</block>
</algo>
</tab>
<tab name="Вариант_02">
Новая разметка:
<algo>
<params>
<param name = "N" type = "int"></param>
<param name = "M" type = "int"></param>
</params>
<block id = "0" dims = "1">
<arg name = "i" val = "1..N"></arg>
<vertex condition = "" type = "1">
<in src = "i - 1"></in>
</vertex>
</block>
<block id = "1" dims = "2">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..M"></arg>
<vertex condition = "" type = "1">
<in src = "i - 2, j"></in>
</vertex>
</block>
<block id = "2" dims = "3">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..M"></arg>
<arg name = "k" val = "1..N-1"></arg>
<vertex condition = "(j == 1) and (k == 1)" type = "1">
<in bsrc = "0" src = "i"></in>
<in bsrc = "1" src = "i, M"></in>
</vertex>
<vertex condition = "(j > 1) or (k > 1)" type = "1">
<in src = "i, j - 1, 1"></in>
</vertex>
</block>
</algo>
</tab>
<tab name="Вариант_03">
Новая разметка:
<algo>
<params>
<param name = "N" type = "int"></param>
<param name = "M" type = "int"></param>
</params>
<block id = "0" dims = "1">
<arg name = "i" val = "1..N"></arg>
<vertex condition = "" type = "1">
</vertex>
</block>
<block id = "1" dims = "2">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..M"></arg>
<vertex condition = "" type = "1">
<in src = "i, j - 2"></in>
<in bsrc = "0" src = "i"></in>
</vertex>
</block>
<block id = "2" dims = "3">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..M"></arg>
<arg name = "k" val = "1..N-1"></arg>
<vertex condition = "(j == 1) and (k == 1)" type = "1">
<in bsrc = "1" src = "i, M"></in>
</vertex>
<vertex condition = "(j > 1) or (k > 1)" type = "1">
<in src = "i, j - 1, k"></in>
</vertex>
</block>
</algo>
</tab>
<tab name="Вариант_04">
Новая разметка:
<algo>
<params>
<param name = "N" type = "int"></param>
<param name = "M" type = "int"></param>
</params>
<block id = "0" dims = "1">
<arg name = "i" val = "1..N"></arg>
<vertex condition = "" type = "1">
<in src = "i - 1"></in>
</vertex>
</block>
<block id = "1" dims = "2">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..M"></arg>
<vertex condition = "" type = "1">
<in src = "i - 1, j - 1"></in>
<in bsrc = "0" src = "i"></in>
</vertex>
</block>
<block id = "2" dims = "3">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..M"></arg>
<arg name = "k" val = "1..N-1"></arg>
<vertex condition = "(j == 1) and (k == 1)" type = "1">
<in bsrc = "1" src = "i, M"></in>
</vertex>
<vertex condition = "(j > 1) or (k > 1)" type = "1">
<in src = "i - 1, j, k"></in>
</vertex>
</block>
</algo>
</tab>
</tabs>
Параметрика Пакуля
<tabs>
<tab name="Параметрика">
Новая разметка:
<algo>
<params>
<param name = "N" type = "int"></param>
<param name = "M" type = "int"></param>
<aparam name = "p0" type = "int"></aparam>
<aparam name = "p1" type = "int"></aparam>
<aparam name = "p2" type = "int"></aparam>
<aparam name = "p3" type = "int"></aparam>
<aparam name = "p4" type = "int"></aparam>
<aparam name = "p5" type = "int"></aparam>
</params>
<block id = "0" dims = "1">
<arg name = "i" val = "1..N"></arg>
<vertex condition = "" type = "1">
<in src = "i + p0"></in>
</vertex>
</block>
<block id = "1" dims = "2">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..M"></arg>
<vertex condition = "p3 == 0" type = "1">
<in src = "i + p1, j + p2"></in>
</vertex>
<vertex condition = "p3 == 1" type = "1">
<in src = "i + p1, j + p2"></in>
<in bsrc = "0" src = "i"></in>
</vertex>
</block>
<block id = "2" dims = "3">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..M"></arg>
<arg name = "k" val = "1..N-1"></arg>
<vertex condition = "(j == 1) and (k == 1) and (p3 == 1)" type = "1">
<in bsrc = "1" src = "i, M"></in>
</vertex>
<vertex condition = "(j == 1) and (k == 1) and (p3 == 0)" type = "1">
<in bsrc = "1" src = "i, M"></in>
<in bsrc = "0" src = "i"></in>
</vertex>
<vertex condition = "((j > 1) or (k > 1)) and (p4 == 1)" type = "1">
<in src = "i - 1 * (1 - p5), j - 1 * p5, 1"></in>
</vertex>
<vertex condition = "((j > 1) or (k > 1)) and (p4 == 0)" type = "1">
<in src = "i - 1 * (1 - p5), j - 1 * p5, k"></in>
</vertex>
</block>
</algo>
</tab>
<tab name="Пакулев">
Новая разметка:
<algo>
<params>
<param name = "N" type = "int"></param>
</params>
<block id = "0" dims = "2">
<arg name = "i" val = "1..N"></arg>
<arg name = "j" val = "1..N"></arg>
<vertex condition = "(2 * i + j) <= (N + 1)" type = "1">
</vertex>
<vertex condition = "((2 * i + j) > (N + 1)) and ((i + j) <= N)" type = "1">
<in src = "i - 1, j + 2 * (N + 1 - i - j)"></in>
</vertex>
<vertex condition = "((i + j) > N) and ((2 * i + j) <= (2 * N))" type = "1">
<in src = "i, j - 1 - 2 * ((i + j) - N - 1)"></in>
</vertex>
<vertex condition = "((2 * i + j) > (2 * N)) and ((i + j) <= (2 * N - 1))" type = "1">
<in src = "i - 1 * (2 * i + j - 2 * N), 1"></in>
</vertex>
<vertex condition = "((i + j) > (2 * N - 1))" type = "1">
</vertex>
</block>
</algo>
</tab>
</tabs>