From 81058be0ad59c256f0551e8bc4ad80d40bc0723c Mon Sep 17 00:00:00 2001 From: TJirden Date: Sat, 31 Jan 2026 13:47:37 +0300 Subject: [PATCH 01/11] =?UTF-8?q?=D0=9A=D1=83=D0=B1=D0=B8=D0=BA=20=D1=80?= =?UTF-8?q?=D1=83=D0=B1=D0=B8=D0=BA=D0=B0=201?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/hse/java/IntExpression.java | 6 -- .../java/hse/java/exprtree/Expression.java | 7 ++ .../java/hse/java/{ => exprtree}/Main.java | 0 .../practice/task1/RotationPermutations.java | 77 +++++++++++++++++ .../hse/java/practice/task1/RubiksCube.java | 83 ++++++++++++++++--- 5 files changed, 157 insertions(+), 16 deletions(-) delete mode 100644 src/main/java/hse/java/IntExpression.java create mode 100644 src/main/java/hse/java/exprtree/Expression.java rename src/main/java/hse/java/{ => exprtree}/Main.java (100%) create mode 100644 src/main/java/hse/java/practice/task1/RotationPermutations.java diff --git a/src/main/java/hse/java/IntExpression.java b/src/main/java/hse/java/IntExpression.java deleted file mode 100644 index e5f4ad89..00000000 --- a/src/main/java/hse/java/IntExpression.java +++ /dev/null @@ -1,6 +0,0 @@ -package hse.java; - -public interface IntExpression { - String toString(); - int eval(); -} diff --git a/src/main/java/hse/java/exprtree/Expression.java b/src/main/java/hse/java/exprtree/Expression.java new file mode 100644 index 00000000..d6422a8b --- /dev/null +++ b/src/main/java/hse/java/exprtree/Expression.java @@ -0,0 +1,7 @@ +package hse.java.exprtree; + +public interface Expression { + String toString(); + int get_ + int eval(); +} diff --git a/src/main/java/hse/java/Main.java b/src/main/java/hse/java/exprtree/Main.java similarity index 100% rename from src/main/java/hse/java/Main.java rename to src/main/java/hse/java/exprtree/Main.java diff --git a/src/main/java/hse/java/practice/task1/RotationPermutations.java b/src/main/java/hse/java/practice/task1/RotationPermutations.java new file mode 100644 index 00000000..f7e21ac5 --- /dev/null +++ b/src/main/java/hse/java/practice/task1/RotationPermutations.java @@ -0,0 +1,77 @@ +package hse.java.practice.task1; + +public class RotationPermutations { + static final int[][] U_CW = { + {33, 35, 40, 38}, + {34, 37, 39, 36}, + {25, 17, 9, 1}, + {26, 18, 10, 2}, + {27, 19, 11, 3} + }; + + static final int[][] U_CCW = reverseCycles(U_CW); + + static final int[][] D_CW = { + {41, 43, 48, 46}, + {42, 45, 47, 44}, + {6, 14, 22, 30}, + {7, 15, 23, 31}, + {8, 16, 24, 32} + }; + + static final int[][] D_CCW = reverseCycles(D_CW); + + static final int[][] L_CW = { + {1, 3, 8, 6}, + {2, 5, 7, 4}, + {33, 9, 41, 32}, + {36, 12, 44, 29}, + {38, 14, 46, 27} + }; + + static final int[][] L_CCW = reverseCycles(L_CW); + + static final int[][] R_CW = { + {17, 19, 24, 22}, + {18, 21, 23, 20}, + {48, 16, 40, 25}, + {45, 13, 37, 28}, + {43, 11, 35, 30} + }; + + static final int[][] R_CCW = reverseCycles(R_CW); + + static final int[][] F_CW = { + {9, 11, 16, 14}, + {10, 13, 15, 12}, + {38, 17, 43, 8}, + {39, 20, 42, 5}, + {40, 22, 41, 3} + }; + + static final int[][] F_CCW = reverseCycles(F_CW); + + static final int[][] B_CW = { + {25, 27, 32, 30}, + {26, 29, 31, 28}, + {19, 33, 6, 48}, + {21, 34, 4, 47}, + {24, 35, 1, 46} + }; + + static final int[][] B_CCW = reverseCycles(B_CW); + + private static int[][] reverseCycles(int[][] cycles) { + int[][] reversed = new int[cycles.length][]; + for (int i = 0; i < cycles.length; i++) { + int[] cycle = cycles[i]; + int[] revCycle = new int[cycle.length]; + revCycle[0] = cycle[0]; + for (int j = 1; j < cycle.length; j++) { + revCycle[j] = cycle[cycle.length - j]; + } + reversed[i] = revCycle; + } + return reversed; + } +} diff --git a/src/main/java/hse/java/practice/task1/RubiksCube.java b/src/main/java/hse/java/practice/task1/RubiksCube.java index 3f605191..4fc4b4d1 100644 --- a/src/main/java/hse/java/practice/task1/RubiksCube.java +++ b/src/main/java/hse/java/practice/task1/RubiksCube.java @@ -1,16 +1,10 @@ package hse.java.practice.task1; - import java.util.Arrays; -/** - * Необходимо реализовать интерфейс Cube - * При повороте передней грани, меняются верх низ право и лево - */ -public class RubiksCube { - +public class RubiksCube implements Cube { + private final int[] state; private static final int EDGES_COUNT = 6; - private final Edge[] edges = new Edge[EDGES_COUNT]; /** @@ -21,17 +15,86 @@ public class RubiksCube { * ... */ public RubiksCube() { + state = new int[49]; + for (int i = 1; i <= 48; i++) { + state[i] = i; + } CubeColor[] colors = CubeColor.values(); for (int i = 0; i < 6; i++) { edges[i] = new Edge(colors[i]); } } + private void applyCycles(int[][] cycles) { + for (int[] cycle : cycles) { + applyCycle(cycle); + } + } + + private void applyCycle(int[] cycle) { + int first = state[cycle[cycle.length - 1]]; + for (int i = cycle.length - 1; i > 0; i--) { + state[cycle[i]] = state[cycle[i - 1]]; + } + state[cycle[0]] = first; + } + + @Override + public void up(RotateDirection direction) { + applyCycles(direction == RotateDirection.CLOCKWISE ? + RotationPermutations.U_CW : RotationPermutations.U_CCW); + } + + @Override + public void down(RotateDirection direction) { + applyCycles(direction == RotateDirection.CLOCKWISE ? + RotationPermutations.D_CW : RotationPermutations.D_CCW); + } + + @Override + public void left(RotateDirection direction) { + applyCycles(direction == RotateDirection.CLOCKWISE ? + RotationPermutations.L_CW : RotationPermutations.L_CCW); + } + + @Override + public void right(RotateDirection direction) { + applyCycles(direction == RotateDirection.CLOCKWISE ? + RotationPermutations.R_CW : RotationPermutations.R_CCW); + } + + @Override public void front(RotateDirection direction) { + applyCycles(direction == RotateDirection.CLOCKWISE ? + RotationPermutations.F_CW : RotationPermutations.F_CCW); + } + @Override + public void back(RotateDirection direction) { + applyCycles(direction == RotateDirection.CLOCKWISE ? + RotationPermutations.B_CW : RotationPermutations.B_CCW); } - + + public Edge[] getEdges() { + CubeColor[] colors = CubeColor.values(); + for (int i = 0; i < EDGES_COUNT; i++) { + CubeColor[][] parts = new CubeColor[3][3]; + for (int x = 0; x < 3; x++) { + for (int y = 0; y < 3; y++) { + int pos = x + y * 3 + 1; + if (pos == 5) { + parts[x][y] = colors[i]; + continue; + } + if (pos > 5) { + pos--; + } + parts[x][y] = colors[(state[pos + i * 8]-1)/8]; + } + } + edges[i].setParts(parts); + } return edges; } @@ -39,4 +102,4 @@ public Edge[] getEdges() { public String toString() { return Arrays.toString(edges); } -} +} \ No newline at end of file From 7bf265d169ea17277048cfad30e8eade5d41404a Mon Sep 17 00:00:00 2001 From: TJirden Date: Sat, 31 Jan 2026 14:02:54 +0300 Subject: [PATCH 02/11] =?UTF-8?q?=D0=9F=D1=80=D0=BE=D0=B1=D0=BD=D1=8B?= =?UTF-8?q?=D0=B9=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B8=D1=82=20=D0=B8=20=D0=BF?= =?UTF-8?q?=D1=83=D1=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/hse/java/practice/task1/RubiksCube.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/hse/java/practice/task1/RubiksCube.java b/src/main/java/hse/java/practice/task1/RubiksCube.java index 4fc4b4d1..7e7a51f3 100644 --- a/src/main/java/hse/java/practice/task1/RubiksCube.java +++ b/src/main/java/hse/java/practice/task1/RubiksCube.java @@ -12,7 +12,7 @@ public class RubiksCube implements Cube { * грани разместить по ордеру в енуме цветов * грань 0 -> цвет 0 * грань 1 -> цвет 1 - * ... + * и тд */ public RubiksCube() { state = new int[49]; From 98bb82b9638bcce7c6c1ebd215de6fc220dc70a9 Mon Sep 17 00:00:00 2001 From: TJirden Date: Sat, 31 Jan 2026 14:11:09 +0300 Subject: [PATCH 03/11] =?UTF-8?q?=D0=9F=D1=80=D0=BE=D0=B1=D0=BD=D1=8B?= =?UTF-8?q?=D0=B9=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B8=D1=82=20=D0=B8=20=D0=BF?= =?UTF-8?q?=D1=83=D1=88=202?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/hse/java/practice/task1/RubiksCube.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/hse/java/practice/task1/RubiksCube.java b/src/main/java/hse/java/practice/task1/RubiksCube.java index 7e7a51f3..b7769916 100644 --- a/src/main/java/hse/java/practice/task1/RubiksCube.java +++ b/src/main/java/hse/java/practice/task1/RubiksCube.java @@ -12,7 +12,7 @@ public class RubiksCube implements Cube { * грани разместить по ордеру в енуме цветов * грань 0 -> цвет 0 * грань 1 -> цвет 1 - * и тд + * и тд 2 */ public RubiksCube() { state = new int[49]; From 73831474b6f189165afb89931e1420bc6f72b877 Mon Sep 17 00:00:00 2001 From: TJirden Date: Sat, 31 Jan 2026 14:12:55 +0300 Subject: [PATCH 04/11] =?UTF-8?q?=D0=9F=D1=80=D0=BE=D0=B1=D0=BD=D1=8B?= =?UTF-8?q?=D0=B9=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B8=D1=82=20=D0=B8=20=D0=BF?= =?UTF-8?q?=D1=83=D1=88=203?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/hse/java/practice/task1/RubiksCube.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/hse/java/practice/task1/RubiksCube.java b/src/main/java/hse/java/practice/task1/RubiksCube.java index b7769916..dbfb64c2 100644 --- a/src/main/java/hse/java/practice/task1/RubiksCube.java +++ b/src/main/java/hse/java/practice/task1/RubiksCube.java @@ -12,7 +12,7 @@ public class RubiksCube implements Cube { * грани разместить по ордеру в енуме цветов * грань 0 -> цвет 0 * грань 1 -> цвет 1 - * и тд 2 + * и тд 3 */ public RubiksCube() { state = new int[49]; From 6880eb5ac72faf1e9e8f714dbba526515ccae347 Mon Sep 17 00:00:00 2001 From: TJirden Date: Sat, 31 Jan 2026 14:16:19 +0300 Subject: [PATCH 05/11] =?UTF-8?q?=D0=9F=D1=80=D0=BE=D0=B1=D0=BD=D1=8B?= =?UTF-8?q?=D0=B9=20=D0=BA=D0=BE=D0=BC=D0=BC=D0=B8=D1=82=20=D0=B8=20=D0=BF?= =?UTF-8?q?=D1=83=D1=88=204?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/hse/java/practice/task1/RubiksCube.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/hse/java/practice/task1/RubiksCube.java b/src/main/java/hse/java/practice/task1/RubiksCube.java index dbfb64c2..64d2d9b1 100644 --- a/src/main/java/hse/java/practice/task1/RubiksCube.java +++ b/src/main/java/hse/java/practice/task1/RubiksCube.java @@ -63,11 +63,11 @@ public void right(RotateDirection direction) { RotationPermutations.R_CW : RotationPermutations.R_CCW); } - @Override - public void front(RotateDirection direction) { - applyCycles(direction == RotateDirection.CLOCKWISE ? - RotationPermutations.F_CW : RotationPermutations.F_CCW); - } +// @Override +// public void front(RotateDirection direction) { +// applyCycles(direction == RotateDirection.CLOCKWISE ? +// RotationPermutations.F_CW : RotationPermutations.F_CCW); +// } @Override public void back(RotateDirection direction) { From 508a8f085ac461cd4f1cb77c5da50d57089086cb Mon Sep 17 00:00:00 2001 From: TJirden Date: Sat, 31 Jan 2026 21:56:58 +0300 Subject: [PATCH 06/11] =?UTF-8?q?=D0=9D=D0=BE=D1=80=D0=BC=D0=B8=D1=80?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20=D0=BA=D0=B0=D1=80=D1=82?= =?UTF-8?q?=D1=8B=20=D0=BA=D1=83=D0=B1=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../practice/task1/RotationPermutations.java | 15 +++++++++++++++ .../hse/java/practice/task1/RubiksCube.java | 18 ++++++++++-------- 2 files changed, 25 insertions(+), 8 deletions(-) diff --git a/src/main/java/hse/java/practice/task1/RotationPermutations.java b/src/main/java/hse/java/practice/task1/RotationPermutations.java index f7e21ac5..01bdb9fb 100644 --- a/src/main/java/hse/java/practice/task1/RotationPermutations.java +++ b/src/main/java/hse/java/practice/task1/RotationPermutations.java @@ -1,5 +1,8 @@ package hse.java.practice.task1; +import java.util.HashMap; +import java.util.Map; + public class RotationPermutations { static final int[][] U_CW = { {33, 35, 40, 38}, @@ -74,4 +77,16 @@ private static int[][] reverseCycles(int[][] cycles) { } return reversed; } + + /** + * Эта штука нужна, так как в кубике рубика на вики грани расположены по-другому и я не сильно хочу разбираться в том, где какие перестановки + */ + static final Map fromWikiToHw = new HashMap<>() {{ + put(0, 2); + put(1, 4); + put(2, 3); + put(3, 5); + put(4, 0); + put(5, 1); + }}; } diff --git a/src/main/java/hse/java/practice/task1/RubiksCube.java b/src/main/java/hse/java/practice/task1/RubiksCube.java index 64d2d9b1..e5fa3257 100644 --- a/src/main/java/hse/java/practice/task1/RubiksCube.java +++ b/src/main/java/hse/java/practice/task1/RubiksCube.java @@ -63,11 +63,11 @@ public void right(RotateDirection direction) { RotationPermutations.R_CW : RotationPermutations.R_CCW); } -// @Override -// public void front(RotateDirection direction) { -// applyCycles(direction == RotateDirection.CLOCKWISE ? -// RotationPermutations.F_CW : RotationPermutations.F_CCW); -// } + @Override + public void front(RotateDirection direction) { + applyCycles(direction == RotateDirection.CLOCKWISE ? + RotationPermutations.F_CW : RotationPermutations.F_CCW); + } @Override public void back(RotateDirection direction) { @@ -78,22 +78,24 @@ public void back(RotateDirection direction) { public Edge[] getEdges() { CubeColor[] colors = CubeColor.values(); + for (int i = 0; i < EDGES_COUNT; i++) { CubeColor[][] parts = new CubeColor[3][3]; for (int x = 0; x < 3; x++) { for (int y = 0; y < 3; y++) { int pos = x + y * 3 + 1; if (pos == 5) { - parts[x][y] = colors[i]; + parts[y][x] = colors[RotationPermutations.fromWikiToHw.get(i)]; continue; } if (pos > 5) { pos--; } - parts[x][y] = colors[(state[pos + i * 8]-1)/8]; + int colorId = RotationPermutations.fromWikiToHw.get((state[i*8+pos] - 1) / 8); + parts[y][x] = colors[colorId]; } } - edges[i].setParts(parts); + edges[RotationPermutations.fromWikiToHw.get(i)].setParts(parts); } return edges; } From 99b49c7f3c02e28398089605a15f4cd0acbaebdb Mon Sep 17 00:00:00 2001 From: TJirden Date: Sat, 31 Jan 2026 22:43:38 +0300 Subject: [PATCH 07/11] Trigger CI/CD build From 27d6b29c230c9946878d42c0754d15c91781d08a Mon Sep 17 00:00:00 2001 From: TJirden Date: Sat, 31 Jan 2026 22:46:21 +0300 Subject: [PATCH 08/11] exprtree --- src/main/java/hse/java/exprtree/Const.java | 25 +++++++++++++++++++ src/main/java/hse/java/exprtree/ExprType.java | 17 +++++++++++++ .../java/hse/java/exprtree/Expression.java | 4 +-- src/main/java/hse/java/exprtree/Main.java | 9 +++++-- .../java/hse/java/exprtree/Operation.java | 24 ++++++++++++++++++ 5 files changed, 75 insertions(+), 4 deletions(-) create mode 100644 src/main/java/hse/java/exprtree/Const.java create mode 100644 src/main/java/hse/java/exprtree/ExprType.java create mode 100644 src/main/java/hse/java/exprtree/Operation.java diff --git a/src/main/java/hse/java/exprtree/Const.java b/src/main/java/hse/java/exprtree/Const.java new file mode 100644 index 00000000..27a27579 --- /dev/null +++ b/src/main/java/hse/java/exprtree/Const.java @@ -0,0 +1,25 @@ +package hse.java.exprtree; + + +public non-sealed class Const implements Expression { + private final int value; + + public Const(int value) { + this.value = value; + } + +// @Override +// public int getPriority() { +// return 10; +// } + + @Override + public int eval() { + return value; + } + + @Override + public String toString(){ + return Integer.toString(value); + } +} diff --git a/src/main/java/hse/java/exprtree/ExprType.java b/src/main/java/hse/java/exprtree/ExprType.java new file mode 100644 index 00000000..914ed483 --- /dev/null +++ b/src/main/java/hse/java/exprtree/ExprType.java @@ -0,0 +1,17 @@ +package hse.java.exprtree; + +import java.util.function.BiFunction; + +public enum ExprType { + SUM(Integer::sum), + PRODUCT((Integer x, Integer y) -> x * y); + private final BiFunction operation; + + ExprType(BiFunction operation) { + this.operation = operation; + } + + public int operation(int x, int y) { + return operation.apply(x, y); + } +} diff --git a/src/main/java/hse/java/exprtree/Expression.java b/src/main/java/hse/java/exprtree/Expression.java index d6422a8b..0fa3e5a2 100644 --- a/src/main/java/hse/java/exprtree/Expression.java +++ b/src/main/java/hse/java/exprtree/Expression.java @@ -1,7 +1,7 @@ package hse.java.exprtree; -public interface Expression { +public sealed interface Expression permits Operation, Const { String toString(); - int get_ +// int getPriority(); int eval(); } diff --git a/src/main/java/hse/java/exprtree/Main.java b/src/main/java/hse/java/exprtree/Main.java index 9b81c1ef..ae042cd0 100644 --- a/src/main/java/hse/java/exprtree/Main.java +++ b/src/main/java/hse/java/exprtree/Main.java @@ -1,9 +1,14 @@ -package hse.java; +package hse.java.exprtree; + +import java.beans.Expression; +import java.util.Scanner; //TIP To Run code, press or // click the icon in the gutter. public class Main { public static void main(String[] args) { - System.out.println("Hello world!"); + Operation z = new Operation(new Const(5), new Const(7),ExprType.PRODUCT); + System.out.println(z.eval()); + } } \ No newline at end of file diff --git a/src/main/java/hse/java/exprtree/Operation.java b/src/main/java/hse/java/exprtree/Operation.java new file mode 100644 index 00000000..2aa4e70c --- /dev/null +++ b/src/main/java/hse/java/exprtree/Operation.java @@ -0,0 +1,24 @@ +package hse.java.exprtree; + +public non-sealed class Operation implements Expression { + private final Expression l, r; + private final ExprType type; + + public Operation(Expression l, Expression r, ExprType type) { + this.l = l; + this.r = r; + this.type = type; + } + +// @Override +// public int getPriority() { +// return 0; +// } + + @Override + public int eval() { + return type.operation(l.eval(),r.eval()); + } + + +} From 2b750eed245cbd15b64ad83b5311f4bdd0d730f3 Mon Sep 17 00:00:00 2001 From: TJirden Date: Sat, 31 Jan 2026 23:21:03 +0300 Subject: [PATCH 09/11] =?UTF-8?q?=D0=A1=D0=BC=D0=B5=D0=BD=D0=B0=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=B2=D0=BE=D1=80=D0=BE=D1=82=D0=B0=20=D0=B7=D0=B0=D0=B4?= =?UTF-8?q?=D0=BD=D0=B5=D0=B9=20=D1=87=D0=B0=D1=81=D1=82=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/hse/java/practice/task1/RotationPermutations.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/hse/java/practice/task1/RotationPermutations.java b/src/main/java/hse/java/practice/task1/RotationPermutations.java index 01bdb9fb..aa3fc6c6 100644 --- a/src/main/java/hse/java/practice/task1/RotationPermutations.java +++ b/src/main/java/hse/java/practice/task1/RotationPermutations.java @@ -54,7 +54,7 @@ public class RotationPermutations { static final int[][] F_CCW = reverseCycles(F_CW); - static final int[][] B_CW = { + static final int[][] B_СCW = { {25, 27, 32, 30}, {26, 29, 31, 28}, {19, 33, 6, 48}, @@ -62,7 +62,7 @@ public class RotationPermutations { {24, 35, 1, 46} }; - static final int[][] B_CCW = reverseCycles(B_CW); + static final int[][] B_CW = reverseCycles(B_СCW); private static int[][] reverseCycles(int[][] cycles) { int[][] reversed = new int[cycles.length][]; From ff83bc488ddafb12c2647453199148be890edc3c Mon Sep 17 00:00:00 2001 From: TJirden Date: Sat, 31 Jan 2026 23:21:55 +0300 Subject: [PATCH 10/11] =?UTF-8?q?=D0=A1=D0=BC=D0=B5=D0=BD=D0=B0=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=B2=D0=BE=D1=80=D0=BE=D1=82=D0=B0=20=D0=B7=D0=B0=D0=B4?= =?UTF-8?q?=D0=BD=D0=B5=D0=B9=20=D1=87=D0=B0=D1=81=D1=82=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/hse/java/practice/task1/RotationPermutations.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/hse/java/practice/task1/RotationPermutations.java b/src/main/java/hse/java/practice/task1/RotationPermutations.java index aa3fc6c6..e17e9b2b 100644 --- a/src/main/java/hse/java/practice/task1/RotationPermutations.java +++ b/src/main/java/hse/java/practice/task1/RotationPermutations.java @@ -54,7 +54,7 @@ public class RotationPermutations { static final int[][] F_CCW = reverseCycles(F_CW); - static final int[][] B_СCW = { + static final int[][] B_CCW = { {25, 27, 32, 30}, {26, 29, 31, 28}, {19, 33, 6, 48}, @@ -62,7 +62,7 @@ public class RotationPermutations { {24, 35, 1, 46} }; - static final int[][] B_CW = reverseCycles(B_СCW); + static final int[][] B_CW = reverseCycles(B_CCW); private static int[][] reverseCycles(int[][] cycles) { int[][] reversed = new int[cycles.length][]; From 8d2010c5ae75330aac83d795b2c40a8b03fcef28 Mon Sep 17 00:00:00 2001 From: TJirden Date: Sat, 31 Jan 2026 23:41:51 +0300 Subject: [PATCH 11/11] =?UTF-8?q?=D0=A1=D0=BC=D0=B5=D0=BD=D0=B0=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=B2=D0=BE=D1=80=D0=BE=D1=82=D0=B0=20=D0=B7=D0=B0=D0=B4?= =?UTF-8?q?=D0=BD=D0=B5=D0=B9=20=D1=87=D0=B0=D1=81=D1=82=D0=B8=20(=D1=81?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2=D0=B0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/hse/java/practice/task1/RotationPermutations.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/hse/java/practice/task1/RotationPermutations.java b/src/main/java/hse/java/practice/task1/RotationPermutations.java index e17e9b2b..01bdb9fb 100644 --- a/src/main/java/hse/java/practice/task1/RotationPermutations.java +++ b/src/main/java/hse/java/practice/task1/RotationPermutations.java @@ -54,7 +54,7 @@ public class RotationPermutations { static final int[][] F_CCW = reverseCycles(F_CW); - static final int[][] B_CCW = { + static final int[][] B_CW = { {25, 27, 32, 30}, {26, 29, 31, 28}, {19, 33, 6, 48}, @@ -62,7 +62,7 @@ public class RotationPermutations { {24, 35, 1, 46} }; - static final int[][] B_CW = reverseCycles(B_CCW); + static final int[][] B_CCW = reverseCycles(B_CW); private static int[][] reverseCycles(int[][] cycles) { int[][] reversed = new int[cycles.length][];