From de66e1d6438cf4ce08ffe8cd1c849e94565465b4 Mon Sep 17 00:00:00 2001 From: zz <66117259+twilightjy@users.noreply.github.com> Date: Thu, 26 Aug 2021 15:56:45 +0800 Subject: [PATCH] 0826-1 0826-1 --- .DS_Store | Bin 0 -> 6148 bytes .gitignore | 1 + .idea/.gitignore | 8 + .idea/misc.xml | 6 + .idea/modules.xml | 8 + .idea/runConfigurations.xml | 10 ++ .idea/vcs.xml | 6 + algorithmbasic2020.iml | 11 ++ .../algorithmbasic2020/aaa/Main.class | Bin 0 -> 2051 bytes .../algorithmbasic2020/aaa/Main2.class | Bin 0 -> 1401 bytes .../algorithmbasic2020/aaa/Main3.class | Bin 0 -> 3238 bytes .../class01/Code01_SelectionSort.class | Bin 0 -> 2879 bytes .../class01/Code02_BubbleSort.class | Bin 0 -> 2817 bytes .../class01/Code03_InsertionSort.class | Bin 0 -> 2936 bytes .../class01/Code04_BSExist.class | Bin 0 -> 1737 bytes .../class01/Code05_BSNearLeft.class | Bin 0 -> 2399 bytes .../class01/Code05_BSNearRight.class | Bin 0 -> 2403 bytes .../class01/Code06_BSAwesome.class | Bin 0 -> 644 bytes .../class02/Code01_Swap.class | Bin 0 -> 1456 bytes .../class02/Code02_EvenTimesOddTimes.class | Bin 0 -> 1998 bytes .../class02/Code03_KM.class | Bin 0 -> 4171 bytes .../Code01_ReverseList$DoubleNode.class | Bin 0 -> 509 bytes .../class03/Code01_ReverseList$Node.class | Bin 0 -> 476 bytes .../class03/Code01_ReverseList.class | Bin 0 -> 5559 bytes .../Code02_DeleteGivenValue$Node.class | Bin 0 -> 496 bytes .../class03/Code02_DeleteGivenValue.class | Bin 0 -> 846 bytes ...QueueToStackAndQueue$DoubleEndsQueue.class | Bin 0 -> 2155 bytes ...ubleEndsQueueToStackAndQueue$MyQueue.class | Bin 0 -> 1412 bytes ...ubleEndsQueueToStackAndQueue$MyStack.class | Bin 0 -> 1409 bytes ..._DoubleEndsQueueToStackAndQueue$Node.class | Bin 0 -> 824 bytes ...ode03_DoubleEndsQueueToStackAndQueue.class | Bin 0 -> 2891 bytes .../class03/Code04_RingArray$MyQueue.class | Bin 0 -> 1305 bytes .../class03/Code04_RingArray.class | Bin 0 -> 392 bytes .../class03/Code05_GetMinStack$MyStack1.class | Bin 0 -> 1416 bytes .../class03/Code05_GetMinStack$MyStack2.class | Bin 0 -> 1433 bytes .../class03/Code05_GetMinStack.class | Bin 0 -> 1120 bytes ...oStacksImplementQueue$TwoStacksQueue.class | Bin 0 -> 1533 bytes .../Code06_TwoStacksImplementQueue.class | Bin 0 -> 953 bytes ...TwoQueueImplementStack$TwoQueueStack.class | Bin 0 -> 1738 bytes .../Code07_TwoQueueImplementStack.class | Bin 0 -> 1942 bytes .../class03/Code08_GetMax.class | Bin 0 -> 681 bytes .../class03/HashMapAndSortedMap$Node.class | Bin 0 -> 462 bytes .../class03/HashMapAndSortedMap$Zuo.class | Bin 0 -> 459 bytes .../class03/HashMapAndSortedMap.class | Bin 0 -> 3703 bytes .../class04/Code01_MergeSort.class | Bin 0 -> 3376 bytes .../class04/Code02_SmallSum.class | Bin 0 -> 3380 bytes .../class04/Code03_ReversePair.class | Bin 0 -> 3287 bytes .../class04/Code04_BiggerThanRightTwice.class | Bin 0 -> 3384 bytes .../class05/Code01_CountOfRangeSum.class | Bin 0 -> 1643 bytes .../Code02_PartitionAndQuickSort.class | Bin 0 -> 4051 bytes ..._QuickSortRecursiveAndUnrecursive$Op.class | Bin 0 -> 585 bytes ...e03_QuickSortRecursiveAndUnrecursive.class | Bin 0 -> 4327 bytes ...4_DoubleLinkedListQuickSort$HeadTail.class | Bin 0 -> 778 bytes ...ode04_DoubleLinkedListQuickSort$Info.class | Bin 0 -> 1245 bytes ...ode04_DoubleLinkedListQuickSort$Node.class | Bin 0 -> 544 bytes ...4_DoubleLinkedListQuickSort$NodeComp.class | Bin 0 -> 1067 bytes .../Code04_DoubleLinkedListQuickSort.class | Bin 0 -> 6576 bytes .../class06/Code01_Comparator$AComp.class | Bin 0 -> 852 bytes ...e01_Comparator$IdAscendingComparator.class | Bin 0 -> 986 bytes ...01_Comparator$IdDescendingComparator.class | Bin 0 -> 989 bytes .../class06/Code01_Comparator$IdInAgeDe.class | Bin 0 -> 1016 bytes ...de01_Comparator$IdShengAgeJiangOrder.class | Bin 0 -> 1049 bytes .../class06/Code01_Comparator$MyComp.class | Bin 0 -> 851 bytes .../class06/Code01_Comparator$Student.class | Bin 0 -> 583 bytes .../class06/Code01_Comparator.class | Bin 0 -> 5189 bytes .../class06/Code02_Heap$MyComparator.class | Bin 0 -> 845 bytes .../class06/Code02_Heap$MyMaxHeap.class | Bin 0 -> 1750 bytes .../class06/Code02_Heap$RightMaxHeap.class | Bin 0 -> 1184 bytes .../class06/Code02_Heap.class | Bin 0 -> 2330 bytes .../class06/Code03_HeapSort.class | Bin 0 -> 3780 bytes .../Code04_SortArrayDistanceLessK.class | Bin 0 -> 3568 bytes .../Code01_CoverMax$EndComparator.class | Bin 0 -> 927 bytes .../class07/Code01_CoverMax$Line.class | Bin 0 -> 494 bytes .../Code01_CoverMax$StartComparator.class | Bin 0 -> 935 bytes .../class07/Code01_CoverMax.class | Bin 0 -> 3887 bytes ...veryStepShowBoss$CandidateComparator.class | Bin 0 -> 1122 bytes .../Code02_EveryStepShowBoss$Customer.class | Bin 0 -> 593 bytes ...02_EveryStepShowBoss$DaddyComparator.class | Bin 0 -> 1110 bytes .../Code02_EveryStepShowBoss$Data.class | Bin 0 -> 535 bytes ...de02_EveryStepShowBoss$WhosYourDaddy.class | Bin 0 -> 3373 bytes .../class07/Code02_EveryStepShowBoss.class | Bin 0 -> 7831 bytes .../class07/HeapGreater.class | Bin 0 -> 4026 bytes .../algorithmbasic2020/class07/Inner.class | Bin 0 -> 524 bytes .../class08/Code01_TrieTree$Node1.class | Bin 0 -> 534 bytes .../class08/Code01_TrieTree$Node2.class | Bin 0 -> 645 bytes .../class08/Code01_TrieTree$Right.class | Bin 0 -> 1868 bytes .../class08/Code01_TrieTree$Trie1.class | Bin 0 -> 1951 bytes .../class08/Code01_TrieTree$Trie2.class | Bin 0 -> 2282 bytes .../class08/Code01_TrieTree.class | Bin 0 -> 2587 bytes .../class08/Code02_TrieTree$Node1.class | Bin 0 -> 534 bytes .../class08/Code02_TrieTree$Node2.class | Bin 0 -> 645 bytes .../class08/Code02_TrieTree$Right.class | Bin 0 -> 1883 bytes .../class08/Code02_TrieTree$Trie1.class | Bin 0 -> 1964 bytes .../class08/Code02_TrieTree$Trie2.class | Bin 0 -> 2282 bytes .../class08/Code02_TrieTree.class | Bin 0 -> 2587 bytes .../class08/Code03_CountSort.class | Bin 0 -> 2864 bytes .../class08/Code04_RadixSort.class | Bin 0 -> 3522 bytes .../class09/Code01_LinkedListMid$Node.class | Bin 0 -> 481 bytes .../class09/Code01_LinkedListMid.class | Bin 0 -> 3778 bytes .../Code02_IsPalindromeList$Node.class | Bin 0 -> 496 bytes .../class09/Code02_IsPalindromeList.class | Bin 0 -> 4068 bytes .../Code03_SmallerEqualBigger$Node.class | Bin 0 -> 504 bytes .../class09/Code03_SmallerEqualBigger.class | Bin 0 -> 3209 bytes .../Code04_CopyListWithRandom$Node.class | Bin 0 -> 550 bytes .../class09/Code04_CopyListWithRandom.class | Bin 0 -> 1713 bytes .../Code01_FindFirstIntersectNode$Node.class | Bin 0 -> 520 bytes .../Code01_FindFirstIntersectNode.class | Bin 0 -> 3306 bytes .../Code02_RecursiveTraversalBT$Node.class | Bin 0 -> 525 bytes .../class10/Code02_RecursiveTraversalBT.class | Bin 0 -> 1593 bytes .../Code03_UnRecursiveTraversalBT$Node.class | Bin 0 -> 533 bytes .../Code03_UnRecursiveTraversalBT.class | Bin 0 -> 3114 bytes .../Code01_LevelTraversalBT$Node.class | Bin 0 -> 509 bytes .../class11/Code01_LevelTraversalBT.class | Bin 0 -> 1574 bytes ...e02_SerializeAndReconstructTree$Node.class | Bin 0 -> 556 bytes .../Code02_SerializeAndReconstructTree.class | Bin 0 -> 7992 bytes ...e03_EncodeNaryTreeToBinaryTree$Codec.class | Bin 0 -> 2759 bytes ...de03_EncodeNaryTreeToBinaryTree$Node.class | Bin 0 -> 983 bytes ..._EncodeNaryTreeToBinaryTree$TreeNode.class | Bin 0 -> 559 bytes .../Code03_EncodeNaryTreeToBinaryTree.class | Bin 0 -> 602 bytes .../class11/Code04_PrintBinaryTree$Node.class | Bin 0 -> 508 bytes .../class11/Code04_PrintBinaryTree.class | Bin 0 -> 2975 bytes .../class11/Code05_TreeMaxWidth$Node.class | Bin 0 -> 496 bytes .../class11/Code05_TreeMaxWidth.class | Bin 0 -> 3153 bytes .../class11/Code06_SuccessorNode$Node.class | Bin 0 -> 517 bytes .../class11/Code06_SuccessorNode.class | Bin 0 -> 2465 bytes .../class11/Code07_PaperFolding.class | Bin 0 -> 974 bytes .../class12/Code01_IsCBT$Info.class | Bin 0 -> 545 bytes .../class12/Code01_IsCBT$Node.class | Bin 0 -> 468 bytes .../class12/Code01_IsCBT.class | Bin 0 -> 2853 bytes .../class12/Code02_IsBST$Info.class | Bin 0 -> 536 bytes .../class12/Code02_IsBST$Node.class | Bin 0 -> 468 bytes .../class12/Code02_IsBST.class | Bin 0 -> 3024 bytes .../class12/Code03_IsBalanced$Info.class | Bin 0 -> 514 bytes .../class12/Code03_IsBalanced$Node.class | Bin 0 -> 488 bytes .../class12/Code03_IsBalanced.class | Bin 0 -> 2540 bytes .../class12/Code04_IsFull$Info.class | Bin 0 -> 489 bytes .../class12/Code04_IsFull$Node.class | Bin 0 -> 472 bytes .../class12/Code04_IsFull.class | Bin 0 -> 2469 bytes .../class12/Code05_MaxSubBSTSize$Info.class | Bin 0 -> 629 bytes .../class12/Code05_MaxSubBSTSize$Node.class | Bin 0 -> 500 bytes .../class12/Code05_MaxSubBSTSize.class | Bin 0 -> 3773 bytes .../class12/Code06_MaxDistance$Info.class | Bin 0 -> 515 bytes .../class12/Code06_MaxDistance$Node.class | Bin 0 -> 492 bytes .../class12/Code06_MaxDistance.class | Bin 0 -> 5237 bytes .../class13/Code01_IsCBT$Info.class | Bin 0 -> 545 bytes .../class13/Code01_IsCBT$Node.class | Bin 0 -> 468 bytes .../class13/Code01_IsCBT.class | Bin 0 -> 2838 bytes .../class13/Code02_MaxSubBSTHead$Info.class | Bin 0 -> 760 bytes .../class13/Code02_MaxSubBSTHead$Node.class | Bin 0 -> 500 bytes .../class13/Code02_MaxSubBSTHead.class | Bin 0 -> 3626 bytes .../class13/Code03_lowestAncestor$Info.class | Bin 0 -> 700 bytes .../class13/Code03_lowestAncestor$Node.class | Bin 0 -> 504 bytes .../class13/Code03_lowestAncestor.class | Bin 0 -> 4623 bytes .../class13/Code04_MaxHappy$Employee.class | Bin 0 -> 623 bytes .../class13/Code04_MaxHappy$Info.class | Bin 0 -> 491 bytes .../class13/Code04_MaxHappy.class | Bin 0 -> 3048 bytes ...de05_LowestLexicography$MyComparator.class | Bin 0 -> 1364 bytes .../class13/Code05_LowestLexicography.class | Bin 0 -> 4306 bytes .../class14/Code01_Light.class | Bin 0 -> 2441 bytes .../class14/Code02_LessMoneySplitGold.class | Bin 0 -> 2404 bytes .../class14/Code03_BestArrange$Program.class | Bin 0 -> 507 bytes ...Code03_BestArrange$ProgramComparator.class | Bin 0 -> 984 bytes .../class14/Code03_BestArrange.class | Bin 0 -> 2624 bytes .../Code04_IPO$MaxProfitComparator.class | Bin 0 -> 916 bytes .../Code04_IPO$MinCostComparator.class | Bin 0 -> 910 bytes .../class14/Code04_IPO$Program.class | Bin 0 -> 469 bytes .../class14/Code04_IPO.class | Bin 0 -> 1372 bytes .../class14/Code05_UnionFind$Node.class | Bin 0 -> 670 bytes .../class14/Code05_UnionFind$UnionFind.class | Bin 0 -> 3387 bytes .../class14/Code05_UnionFind.class | Bin 0 -> 448 bytes .../Code01_FriendCircles$UnionFind.class | Bin 0 -> 1239 bytes .../class15/Code01_FriendCircles.class | Bin 0 -> 819 bytes .../class15/Code02_NumberOfIslands$Dot.class | Bin 0 -> 407 bytes .../class15/Code02_NumberOfIslands$Node.class | Bin 0 -> 700 bytes .../Code02_NumberOfIslands$UnionFind1.class | Bin 0 -> 3255 bytes .../Code02_NumberOfIslands$UnionFind2.class | Bin 0 -> 1692 bytes .../class15/Code02_NumberOfIslands.class | Bin 0 -> 5479 bytes .../Code03_NumberOfIslandsII$UnionFind1.class | Bin 0 -> 1782 bytes .../Code03_NumberOfIslandsII$UnionFind2.class | Bin 0 -> 3096 bytes .../class15/Code03_NumberOfIslandsII.class | Bin 0 -> 1609 bytes .../class16/Code01_BFS.class | Bin 0 -> 1382 bytes .../class16/Code02_DFS.class | Bin 0 -> 1438 bytes ...opologicalOrderBFS$DirectedGraphNode.class | Bin 0 -> 728 bytes .../class16/Code03_TopologicalOrderBFS.class | Bin 0 -> 2493 bytes ...pologicalOrderDFS1$DirectedGraphNode.class | Bin 0 -> 733 bytes ...03_TopologicalOrderDFS1$MyComparator.class | Bin 0 -> 1045 bytes .../Code03_TopologicalOrderDFS1$Record.class | Bin 0 -> 747 bytes .../class16/Code03_TopologicalOrderDFS1.class | Bin 0 -> 3082 bytes ...pologicalOrderDFS2$DirectedGraphNode.class | Bin 0 -> 733 bytes ...03_TopologicalOrderDFS2$MyComparator.class | Bin 0 -> 1098 bytes .../Code03_TopologicalOrderDFS2$Record.class | Bin 0 -> 748 bytes .../class16/Code03_TopologicalOrderDFS2.class | Bin 0 -> 3034 bytes .../class16/Code03_TopologySort.class | Bin 0 -> 1985 bytes .../Code04_Kruskal$EdgeComparator.class | Bin 0 -> 834 bytes .../class16/Code04_Kruskal$UnionFind.class | Bin 0 -> 2575 bytes .../class16/Code04_Kruskal.class | Bin 0 -> 1958 bytes .../class16/Code05_Prim$EdgeComparator.class | Bin 0 -> 822 bytes .../class16/Code05_Prim.class | Bin 0 -> 2939 bytes .../class16/Code06_Dijkstra$NodeHeap.class | Bin 0 -> 2913 bytes .../class16/Code06_Dijkstra$NodeRecord.class | Bin 0 -> 538 bytes .../class16/Code06_Dijkstra.class | Bin 0 -> 3600 bytes .../algorithmbasic2020/class16/Edge.class | Bin 0 -> 445 bytes .../algorithmbasic2020/class16/Graph.class | Bin 0 -> 565 bytes .../class16/GraphGenerator.class | Bin 0 -> 1561 bytes .../algorithmbasic2020/class16/Node.class | Bin 0 -> 622 bytes .../class17/Code01_Dijkstra$NodeHeap.class | Bin 0 -> 2913 bytes .../class17/Code01_Dijkstra$NodeRecord.class | Bin 0 -> 538 bytes .../class17/Code01_Dijkstra.class | Bin 0 -> 3600 bytes .../class17/Code02_Hanoi$Record.class | Bin 0 -> 716 bytes .../class17/Code02_Hanoi.class | Bin 0 -> 4036 bytes .../class17/Code03_PrintAllSubsquences.class | Bin 0 -> 3241 bytes .../class17/Code04_PrintAllPermutations.class | Bin 0 -> 4325 bytes .../Code05_ReverseStackUsingRecursive.class | Bin 0 -> 1628 bytes .../algorithmbasic2020/class17/Edge.class | Bin 0 -> 445 bytes .../algorithmbasic2020/class17/Graph.class | Bin 0 -> 565 bytes .../algorithmbasic2020/class17/Node.class | Bin 0 -> 622 bytes .../class18/Code01_RobotWalk.class | Bin 0 -> 2018 bytes .../class18/Code02_CardsInLine.class | Bin 0 -> 2676 bytes .../class19/Code01_Knapsack.class | Bin 0 -> 1662 bytes .../Code02_ConvertToLetterString.class | Bin 0 -> 2667 bytes .../class19/Code03_StickersToSpellWord.class | Bin 0 -> 4470 bytes .../Code04_LongestCommonSubsequence.class | Bin 0 -> 1978 bytes .../Code01_PalindromeSubsequence.class | Bin 0 -> 3074 bytes .../class20/Code02_HorseJump.class | Bin 0 -> 2871 bytes .../class20/Code03_Coffee$Machine.class | Bin 0 -> 504 bytes .../Code03_Coffee$MachineComparator.class | Bin 0 -> 976 bytes .../class20/Code03_Coffee.class | Bin 0 -> 5442 bytes .../class21/Code01_MinPathSum.class | Bin 0 -> 2598 bytes .../Code02_CoinsWayEveryPaperDifferent.class | Bin 0 -> 2582 bytes .../class21/Code03_CoinsWayNoLimit.class | Bin 0 -> 3138 bytes ...e04_CoinsWaySameValueSamePapper$Info.class | Bin 0 -> 576 bytes .../Code04_CoinsWaySameValueSamePapper.class | Bin 0 -> 4985 bytes .../class21/Code05_BobDie.class | Bin 0 -> 1914 bytes .../class22/Code01_KillMonster.class | Bin 0 -> 2504 bytes .../class22/Code02_MinCoinsNoLimit.class | Bin 0 -> 3377 bytes .../class22/Code03_SplitNumber.class | Bin 0 -> 1669 bytes .../class23/Code01_SplitSumClosed.class | Bin 0 -> 2790 bytes .../Code02_SplitSumClosedSizeHalf.class | Bin 0 -> 4338 bytes .../class23/Code03_NQueens.class | Bin 0 -> 2310 bytes .../Code01_SlidingWindowMaxArray.class | Bin 0 -> 2673 bytes .../class24/Code02_AllLessNumSubArray.class | Bin 0 -> 3369 bytes .../class24/Code03_GasStation.class | Bin 0 -> 1693 bytes .../Code04_MinCoinsOnePaper$Info.class | Bin 0 -> 532 bytes .../class24/Code04_MinCoinsOnePaper.class | Bin 0 -> 7275 bytes .../class25/Code01_MonotonousStack.class | Bin 0 -> 4841 bytes .../class25/Code02_AllTimesMinToMax.class | Bin 0 -> 2396 bytes .../Code03_LargestRectangleInHistogram.class | Bin 0 -> 1816 bytes .../class25/Code04_MaximalRectangle.class | Bin 0 -> 1631 bytes .../Code05_CountSubmatricesWithAllOnes.class | Bin 0 -> 1480 bytes .../Code01_SumOfSubarrayMinimums.class | Bin 0 -> 4421 bytes .../class26/Code02_FibonacciProblem.class | Bin 0 -> 3244 bytes .../Code03_ZeroLeftOneStringNumber.class | Bin 0 -> 2272 bytes .../class27/Code01_KMP.class | Bin 0 -> 2091 bytes .../class27/Code02_TreeEqual$Node.class | Bin 0 -> 481 bytes .../class27/Code02_TreeEqual.class | Bin 0 -> 4361 bytes .../class27/Code03_IsRotation.class | Bin 0 -> 2159 bytes .../class28/Code01_Manacher.class | Bin 0 -> 2472 bytes .../class28/Code02_AddShortestEnd.class | Bin 0 -> 1822 bytes .../Code01_FindMinKth$MaxHeapComparator.class | Bin 0 -> 884 bytes .../class29/Code01_FindMinKth.class | Bin 0 -> 4214 bytes .../class29/Code02_MaxTopK.class | Bin 0 -> 5123 bytes .../Code03_ReservoirSampling$RandomBox.class | Bin 0 -> 1092 bytes .../class29/Code03_ReservoirSampling.class | Bin 0 -> 2286 bytes .../class30/Code01_MorrisTraversal$Node.class | Bin 0 -> 508 bytes .../class30/Code01_MorrisTraversal.class | Bin 0 -> 4975 bytes .../class30/Code05_MinHeight$Node.class | Bin 0 -> 479 bytes .../class30/Code05_MinHeight.class | Bin 0 -> 2504 bytes .../class31/Code01_SegmentTree$Right.class | Bin 0 -> 1087 bytes .../Code01_SegmentTree$SegmentTree.class | Bin 0 -> 2565 bytes .../class31/Code01_SegmentTree.class | Bin 0 -> 3286 bytes .../Code02_FallingSquares$SegmentTree.class | Bin 0 -> 1744 bytes .../class31/Code02_FallingSquares.class | Bin 0 -> 2510 bytes .../class32/Code01_IndexTree$IndexTree.class | Bin 0 -> 830 bytes .../class32/Code01_IndexTree$Right.class | Bin 0 -> 800 bytes .../class32/Code01_IndexTree.class | Bin 0 -> 1345 bytes .../class32/Code02_IndexTree2D.class | Bin 0 -> 1461 bytes .../class32/Code03_AC1$ACAutomation.class | Bin 0 -> 2124 bytes .../class32/Code03_AC1$Node.class | Bin 0 -> 505 bytes .../class32/Code03_AC1.class | Bin 0 -> 920 bytes .../class32/Code04_AC2$ACAutomation.class | Bin 0 -> 2367 bytes .../class32/Code04_AC2$Node.class | Bin 0 -> 562 bytes .../class32/Code04_AC2.class | Bin 0 -> 1389 bytes .../class35/Code01_AVLTreeMap$AVLNode.class | Bin 0 -> 916 bytes .../Code01_AVLTreeMap$AVLTreeMap.class | Bin 0 -> 7188 bytes .../class35/Code01_AVLTreeMap.class | Bin 0 -> 461 bytes .../Code01_SizeBalancedTreeMap$SBTNode.class | Bin 0 -> 956 bytes ...eBalancedTreeMap$SizeBalancedTreeMap.class | Bin 0 -> 8246 bytes .../class36/Code01_SizeBalancedTreeMap.class | Bin 0 -> 4554 bytes .../Code02_SkipListMap$SkipListMap.class | Bin 0 -> 5074 bytes .../Code02_SkipListMap$SkipListNode.class | Bin 0 -> 1515 bytes .../class36/Code02_SkipListMap.class | Bin 0 -> 3110 bytes .../Code01_CountofRangeSum$SBTNode.class | Bin 0 -> 572 bytes ..._CountofRangeSum$SizeBalancedTreeSet.class | Bin 0 -> 3780 bytes .../class37/Code01_CountofRangeSum.class | Bin 0 -> 3357 bytes .../Code02_SlidingWindowMedian$Node.class | Bin 0 -> 1089 bytes .../Code02_SlidingWindowMedian$SBTNode.class | Bin 0 -> 826 bytes ...dingWindowMedian$SizeBalancedTreeMap.class | Bin 0 -> 5839 bytes .../class37/Code02_SlidingWindowMedian.class | Bin 0 -> 1601 bytes ...ode03_AddRemoveGetIndexGreat$SBTNode.class | Bin 0 -> 825 bytes ...ode03_AddRemoveGetIndexGreat$SbtList.class | Bin 0 -> 5007 bytes .../Code03_AddRemoveGetIndexGreat.class | Bin 0 -> 3610 bytes ..._QueueReconstructionByHeight$SBTNode.class | Bin 0 -> 596 bytes ...4_QueueReconstructionByHeight$SBTree.class | Bin 0 -> 4034 bytes ...e04_QueueReconstructionByHeight$Unit.class | Bin 0 -> 575 bytes ...econstructionByHeight$UnitComparator.class | Bin 0 -> 1163 bytes .../Code04_QueueReconstructionByHeight.class | Bin 0 -> 4802 bytes .../algorithmbasic2020/class37/Compare.class | Bin 0 -> 10188 bytes .../class38/Code01_AppleMinBags.class | Bin 0 -> 1477 bytes .../class38/Code02_EatGrass.class | Bin 0 -> 1723 bytes .../class38/Code03_MSumToN.class | Bin 0 -> 1546 bytes .../class38/Code04_MoneyProblem.class | Bin 0 -> 3492 bytes .../class39/Code01_SubsquenceMaxModM.class | Bin 0 -> 4209 bytes .../class39/Code02_SnacksWays.class | Bin 0 -> 1898 bytes .../class39/Code02_SnacksWaysMain.class | Bin 0 -> 3521 bytes .../class39/Code03_10Ways.class | Bin 0 -> 2742 bytes .../class39/Code04_DifferentBTNum.class | Bin 0 -> 1477 bytes .../algorithmbasic2020/class39/IsSum.class | Bin 0 -> 5410 bytes ...gestSumSubArrayLengthInPositiveArray.class | Bin 0 -> 2803 bytes .../Code02_LongestSumSubArrayLength.class | Bin 0 -> 3217 bytes .../Code03_LongestLessSumSubArrayLength.class | Bin 0 -> 2393 bytes ...e04_AvgLessEqualValueLongestSubarray.class | Bin 0 -> 4620 bytes .../Code05_PrintMatrixSpiralOrder.class | Bin 0 -> 1955 bytes .../class40/Code06_RotateMatrix.class | Bin 0 -> 1966 bytes .../class40/Code07_ZigZagPrintMatrix.class | Bin 0 -> 1849 bytes .../class40/Code08_PrintStar.class | Bin 0 -> 1792 bytes .../class41/Code01_BestSplitForAll.class | Bin 0 -> 1984 bytes .../Code02_BestSplitForEveryPosition.class | Bin 0 -> 2962 bytes .../class41/Code03_StoneMerge.class | Bin 0 -> 2966 bytes .../class41/Code04_SplitArrayLargestSum.class | Bin 0 -> 4554 bytes .../class42/Code01_PostOfficeProblem.class | Bin 0 -> 3538 bytes .../Code02_ThrowChessPiecesProblem.class | Bin 0 -> 3495 bytes .../class43/Code01_CanIWin.class | Bin 0 -> 1648 bytes .../class43/Code02_TSP.class | Bin 0 -> 6583 bytes .../class43/Code03_PavingTile.class | Bin 0 -> 4107 bytes ...tSubstringInLexicographicalOrder$DC3.class | Bin 0 -> 3295 bytes ..._LastSubstringInLexicographicalOrder.class | Bin 0 -> 1333 bytes .../algorithmbasic2020/class44/DC3.class | Bin 0 -> 4785 bytes .../class44/DC3_Algorithm.pdf | Bin 0 -> 192716 bytes ...nsertS2MakeMostAlphabeticalOrder$DC3.class | Bin 0 -> 3506 bytes ...01_InsertS2MakeMostAlphabeticalOrder.class | Bin 0 -> 4651 bytes .../Code02_CreateMaximumNumber$DC3.class | Bin 0 -> 3450 bytes .../class45/Code02_CreateMaximumNumber.class | Bin 0 -> 3586 bytes ...stCommonSubstringConquerByHeight$DC3.class | Bin 0 -> 3897 bytes ...ongestCommonSubstringConquerByHeight.class | Bin 0 -> 4047 bytes .../class46/Code01_BurstBalloons.class | Bin 0 -> 2156 bytes .../class46/Code02_RemoveBoxes.class | Bin 0 -> 1729 bytes .../Code03_DeleteAdjacentSameCharacter.class | Bin 0 -> 4284 bytes .../class46/Code04_MaxSumLengthNoMore.class | Bin 0 -> 2723 bytes .../class46/Code05_HuffmanTree$Node.class | Bin 0 -> 489 bytes .../class46/Code05_HuffmanTree$NodeComp.class | Bin 0 -> 941 bytes .../class46/Code05_HuffmanTree$TrieNode.class | Bin 0 -> 528 bytes .../class46/Code05_HuffmanTree.class | Bin 0 -> 7867 bytes .../class47/Code01_StrangePrinter.class | Bin 0 -> 2052 bytes .../class47/Code02_RestoreWays.class | Bin 0 -> 5457 bytes .../class47/Code03_DinicAlgorithm$Dinic.class | Bin 0 -> 3000 bytes .../class47/Code03_DinicAlgorithm$Edge.class | Bin 0 -> 570 bytes .../class47/Code03_DinicAlgorithm.class | Bin 0 -> 1916 bytes src/aaa/Demo1.java | 50 ++++++ src/aaa/Main.java | 47 +++++ src/aaa/Main2.java | 45 +++++ src/aaa/Main3.java | 86 +++++++++ src/aaa/Test.java | 163 ++++++++++++++++++ src/class27/Code01_KMP.java | 8 +- src/class27/Code02_TreeEqual.java | 2 +- src/class27/Code03_IsRotation.java | 6 +- src/class28/Code01_Manacher.java | 10 +- src/class28/Code02_AddShortestEnd.java | 7 +- src/class33/Hash.java | 96 +++++------ 368 files changed, 514 insertions(+), 56 deletions(-) create mode 100644 .DS_Store create mode 100644 .gitignore create mode 100644 .idea/.gitignore create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/runConfigurations.xml create mode 100644 .idea/vcs.xml create mode 100644 algorithmbasic2020.iml create mode 100644 out/production/algorithmbasic2020/aaa/Main.class create mode 100644 out/production/algorithmbasic2020/aaa/Main2.class create mode 100644 out/production/algorithmbasic2020/aaa/Main3.class create mode 100644 out/production/algorithmbasic2020/class01/Code01_SelectionSort.class create mode 100644 out/production/algorithmbasic2020/class01/Code02_BubbleSort.class create mode 100644 out/production/algorithmbasic2020/class01/Code03_InsertionSort.class create mode 100644 out/production/algorithmbasic2020/class01/Code04_BSExist.class create mode 100644 out/production/algorithmbasic2020/class01/Code05_BSNearLeft.class create mode 100644 out/production/algorithmbasic2020/class01/Code05_BSNearRight.class create mode 100644 out/production/algorithmbasic2020/class01/Code06_BSAwesome.class create mode 100644 out/production/algorithmbasic2020/class02/Code01_Swap.class create mode 100644 out/production/algorithmbasic2020/class02/Code02_EvenTimesOddTimes.class create mode 100644 out/production/algorithmbasic2020/class02/Code03_KM.class create mode 100644 out/production/algorithmbasic2020/class03/Code01_ReverseList$DoubleNode.class create mode 100644 out/production/algorithmbasic2020/class03/Code01_ReverseList$Node.class create mode 100644 out/production/algorithmbasic2020/class03/Code01_ReverseList.class create mode 100644 out/production/algorithmbasic2020/class03/Code02_DeleteGivenValue$Node.class create mode 100644 out/production/algorithmbasic2020/class03/Code02_DeleteGivenValue.class create mode 100644 out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$DoubleEndsQueue.class create mode 100644 out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$MyQueue.class create mode 100644 out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$MyStack.class create mode 100644 out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$Node.class create mode 100644 out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue.class create mode 100644 out/production/algorithmbasic2020/class03/Code04_RingArray$MyQueue.class create mode 100644 out/production/algorithmbasic2020/class03/Code04_RingArray.class create mode 100644 out/production/algorithmbasic2020/class03/Code05_GetMinStack$MyStack1.class create mode 100644 out/production/algorithmbasic2020/class03/Code05_GetMinStack$MyStack2.class create mode 100644 out/production/algorithmbasic2020/class03/Code05_GetMinStack.class create mode 100644 out/production/algorithmbasic2020/class03/Code06_TwoStacksImplementQueue$TwoStacksQueue.class create mode 100644 out/production/algorithmbasic2020/class03/Code06_TwoStacksImplementQueue.class create mode 100644 out/production/algorithmbasic2020/class03/Code07_TwoQueueImplementStack$TwoQueueStack.class create mode 100644 out/production/algorithmbasic2020/class03/Code07_TwoQueueImplementStack.class create mode 100644 out/production/algorithmbasic2020/class03/Code08_GetMax.class create mode 100644 out/production/algorithmbasic2020/class03/HashMapAndSortedMap$Node.class create mode 100644 out/production/algorithmbasic2020/class03/HashMapAndSortedMap$Zuo.class create mode 100644 out/production/algorithmbasic2020/class03/HashMapAndSortedMap.class create mode 100644 out/production/algorithmbasic2020/class04/Code01_MergeSort.class create mode 100644 out/production/algorithmbasic2020/class04/Code02_SmallSum.class create mode 100644 out/production/algorithmbasic2020/class04/Code03_ReversePair.class create mode 100644 out/production/algorithmbasic2020/class04/Code04_BiggerThanRightTwice.class create mode 100644 out/production/algorithmbasic2020/class05/Code01_CountOfRangeSum.class create mode 100644 out/production/algorithmbasic2020/class05/Code02_PartitionAndQuickSort.class create mode 100644 out/production/algorithmbasic2020/class05/Code03_QuickSortRecursiveAndUnrecursive$Op.class create mode 100644 out/production/algorithmbasic2020/class05/Code03_QuickSortRecursiveAndUnrecursive.class create mode 100644 out/production/algorithmbasic2020/class05/Code04_DoubleLinkedListQuickSort$HeadTail.class create mode 100644 out/production/algorithmbasic2020/class05/Code04_DoubleLinkedListQuickSort$Info.class create mode 100644 out/production/algorithmbasic2020/class05/Code04_DoubleLinkedListQuickSort$Node.class create mode 100644 out/production/algorithmbasic2020/class05/Code04_DoubleLinkedListQuickSort$NodeComp.class create mode 100644 out/production/algorithmbasic2020/class05/Code04_DoubleLinkedListQuickSort.class create mode 100644 out/production/algorithmbasic2020/class06/Code01_Comparator$AComp.class create mode 100644 out/production/algorithmbasic2020/class06/Code01_Comparator$IdAscendingComparator.class create mode 100644 out/production/algorithmbasic2020/class06/Code01_Comparator$IdDescendingComparator.class create mode 100644 out/production/algorithmbasic2020/class06/Code01_Comparator$IdInAgeDe.class create mode 100644 out/production/algorithmbasic2020/class06/Code01_Comparator$IdShengAgeJiangOrder.class create mode 100644 out/production/algorithmbasic2020/class06/Code01_Comparator$MyComp.class create mode 100644 out/production/algorithmbasic2020/class06/Code01_Comparator$Student.class create mode 100644 out/production/algorithmbasic2020/class06/Code01_Comparator.class create mode 100644 out/production/algorithmbasic2020/class06/Code02_Heap$MyComparator.class create mode 100644 out/production/algorithmbasic2020/class06/Code02_Heap$MyMaxHeap.class create mode 100644 out/production/algorithmbasic2020/class06/Code02_Heap$RightMaxHeap.class create mode 100644 out/production/algorithmbasic2020/class06/Code02_Heap.class create mode 100644 out/production/algorithmbasic2020/class06/Code03_HeapSort.class create mode 100644 out/production/algorithmbasic2020/class06/Code04_SortArrayDistanceLessK.class create mode 100644 out/production/algorithmbasic2020/class07/Code01_CoverMax$EndComparator.class create mode 100644 out/production/algorithmbasic2020/class07/Code01_CoverMax$Line.class create mode 100644 out/production/algorithmbasic2020/class07/Code01_CoverMax$StartComparator.class create mode 100644 out/production/algorithmbasic2020/class07/Code01_CoverMax.class create mode 100644 out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss$CandidateComparator.class create mode 100644 out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss$Customer.class create mode 100644 out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss$DaddyComparator.class create mode 100644 out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss$Data.class create mode 100644 out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss$WhosYourDaddy.class create mode 100644 out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss.class create mode 100644 out/production/algorithmbasic2020/class07/HeapGreater.class create mode 100644 out/production/algorithmbasic2020/class07/Inner.class create mode 100644 out/production/algorithmbasic2020/class08/Code01_TrieTree$Node1.class create mode 100644 out/production/algorithmbasic2020/class08/Code01_TrieTree$Node2.class create mode 100644 out/production/algorithmbasic2020/class08/Code01_TrieTree$Right.class create mode 100644 out/production/algorithmbasic2020/class08/Code01_TrieTree$Trie1.class create mode 100644 out/production/algorithmbasic2020/class08/Code01_TrieTree$Trie2.class create mode 100644 out/production/algorithmbasic2020/class08/Code01_TrieTree.class create mode 100644 out/production/algorithmbasic2020/class08/Code02_TrieTree$Node1.class create mode 100644 out/production/algorithmbasic2020/class08/Code02_TrieTree$Node2.class create mode 100644 out/production/algorithmbasic2020/class08/Code02_TrieTree$Right.class create mode 100644 out/production/algorithmbasic2020/class08/Code02_TrieTree$Trie1.class create mode 100644 out/production/algorithmbasic2020/class08/Code02_TrieTree$Trie2.class create mode 100644 out/production/algorithmbasic2020/class08/Code02_TrieTree.class create mode 100644 out/production/algorithmbasic2020/class08/Code03_CountSort.class create mode 100644 out/production/algorithmbasic2020/class08/Code04_RadixSort.class create mode 100644 out/production/algorithmbasic2020/class09/Code01_LinkedListMid$Node.class create mode 100644 out/production/algorithmbasic2020/class09/Code01_LinkedListMid.class create mode 100644 out/production/algorithmbasic2020/class09/Code02_IsPalindromeList$Node.class create mode 100644 out/production/algorithmbasic2020/class09/Code02_IsPalindromeList.class create mode 100644 out/production/algorithmbasic2020/class09/Code03_SmallerEqualBigger$Node.class create mode 100644 out/production/algorithmbasic2020/class09/Code03_SmallerEqualBigger.class create mode 100644 out/production/algorithmbasic2020/class09/Code04_CopyListWithRandom$Node.class create mode 100644 out/production/algorithmbasic2020/class09/Code04_CopyListWithRandom.class create mode 100644 out/production/algorithmbasic2020/class10/Code01_FindFirstIntersectNode$Node.class create mode 100644 out/production/algorithmbasic2020/class10/Code01_FindFirstIntersectNode.class create mode 100644 out/production/algorithmbasic2020/class10/Code02_RecursiveTraversalBT$Node.class create mode 100644 out/production/algorithmbasic2020/class10/Code02_RecursiveTraversalBT.class create mode 100644 out/production/algorithmbasic2020/class10/Code03_UnRecursiveTraversalBT$Node.class create mode 100644 out/production/algorithmbasic2020/class10/Code03_UnRecursiveTraversalBT.class create mode 100644 out/production/algorithmbasic2020/class11/Code01_LevelTraversalBT$Node.class create mode 100644 out/production/algorithmbasic2020/class11/Code01_LevelTraversalBT.class create mode 100644 out/production/algorithmbasic2020/class11/Code02_SerializeAndReconstructTree$Node.class create mode 100644 out/production/algorithmbasic2020/class11/Code02_SerializeAndReconstructTree.class create mode 100644 out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree$Codec.class create mode 100644 out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree$Node.class create mode 100644 out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree$TreeNode.class create mode 100644 out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree.class create mode 100644 out/production/algorithmbasic2020/class11/Code04_PrintBinaryTree$Node.class create mode 100644 out/production/algorithmbasic2020/class11/Code04_PrintBinaryTree.class create mode 100644 out/production/algorithmbasic2020/class11/Code05_TreeMaxWidth$Node.class create mode 100644 out/production/algorithmbasic2020/class11/Code05_TreeMaxWidth.class create mode 100644 out/production/algorithmbasic2020/class11/Code06_SuccessorNode$Node.class create mode 100644 out/production/algorithmbasic2020/class11/Code06_SuccessorNode.class create mode 100644 out/production/algorithmbasic2020/class11/Code07_PaperFolding.class create mode 100644 out/production/algorithmbasic2020/class12/Code01_IsCBT$Info.class create mode 100644 out/production/algorithmbasic2020/class12/Code01_IsCBT$Node.class create mode 100644 out/production/algorithmbasic2020/class12/Code01_IsCBT.class create mode 100644 out/production/algorithmbasic2020/class12/Code02_IsBST$Info.class create mode 100644 out/production/algorithmbasic2020/class12/Code02_IsBST$Node.class create mode 100644 out/production/algorithmbasic2020/class12/Code02_IsBST.class create mode 100644 out/production/algorithmbasic2020/class12/Code03_IsBalanced$Info.class create mode 100644 out/production/algorithmbasic2020/class12/Code03_IsBalanced$Node.class create mode 100644 out/production/algorithmbasic2020/class12/Code03_IsBalanced.class create mode 100644 out/production/algorithmbasic2020/class12/Code04_IsFull$Info.class create mode 100644 out/production/algorithmbasic2020/class12/Code04_IsFull$Node.class create mode 100644 out/production/algorithmbasic2020/class12/Code04_IsFull.class create mode 100644 out/production/algorithmbasic2020/class12/Code05_MaxSubBSTSize$Info.class create mode 100644 out/production/algorithmbasic2020/class12/Code05_MaxSubBSTSize$Node.class create mode 100644 out/production/algorithmbasic2020/class12/Code05_MaxSubBSTSize.class create mode 100644 out/production/algorithmbasic2020/class12/Code06_MaxDistance$Info.class create mode 100644 out/production/algorithmbasic2020/class12/Code06_MaxDistance$Node.class create mode 100644 out/production/algorithmbasic2020/class12/Code06_MaxDistance.class create mode 100644 out/production/algorithmbasic2020/class13/Code01_IsCBT$Info.class create mode 100644 out/production/algorithmbasic2020/class13/Code01_IsCBT$Node.class create mode 100644 out/production/algorithmbasic2020/class13/Code01_IsCBT.class create mode 100644 out/production/algorithmbasic2020/class13/Code02_MaxSubBSTHead$Info.class create mode 100644 out/production/algorithmbasic2020/class13/Code02_MaxSubBSTHead$Node.class create mode 100644 out/production/algorithmbasic2020/class13/Code02_MaxSubBSTHead.class create mode 100644 out/production/algorithmbasic2020/class13/Code03_lowestAncestor$Info.class create mode 100644 out/production/algorithmbasic2020/class13/Code03_lowestAncestor$Node.class create mode 100644 out/production/algorithmbasic2020/class13/Code03_lowestAncestor.class create mode 100644 out/production/algorithmbasic2020/class13/Code04_MaxHappy$Employee.class create mode 100644 out/production/algorithmbasic2020/class13/Code04_MaxHappy$Info.class create mode 100644 out/production/algorithmbasic2020/class13/Code04_MaxHappy.class create mode 100644 out/production/algorithmbasic2020/class13/Code05_LowestLexicography$MyComparator.class create mode 100644 out/production/algorithmbasic2020/class13/Code05_LowestLexicography.class create mode 100644 out/production/algorithmbasic2020/class14/Code01_Light.class create mode 100644 out/production/algorithmbasic2020/class14/Code02_LessMoneySplitGold.class create mode 100644 out/production/algorithmbasic2020/class14/Code03_BestArrange$Program.class create mode 100644 out/production/algorithmbasic2020/class14/Code03_BestArrange$ProgramComparator.class create mode 100644 out/production/algorithmbasic2020/class14/Code03_BestArrange.class create mode 100644 out/production/algorithmbasic2020/class14/Code04_IPO$MaxProfitComparator.class create mode 100644 out/production/algorithmbasic2020/class14/Code04_IPO$MinCostComparator.class create mode 100644 out/production/algorithmbasic2020/class14/Code04_IPO$Program.class create mode 100644 out/production/algorithmbasic2020/class14/Code04_IPO.class create mode 100644 out/production/algorithmbasic2020/class14/Code05_UnionFind$Node.class create mode 100644 out/production/algorithmbasic2020/class14/Code05_UnionFind$UnionFind.class create mode 100644 out/production/algorithmbasic2020/class14/Code05_UnionFind.class create mode 100644 out/production/algorithmbasic2020/class15/Code01_FriendCircles$UnionFind.class create mode 100644 out/production/algorithmbasic2020/class15/Code01_FriendCircles.class create mode 100644 out/production/algorithmbasic2020/class15/Code02_NumberOfIslands$Dot.class create mode 100644 out/production/algorithmbasic2020/class15/Code02_NumberOfIslands$Node.class create mode 100644 out/production/algorithmbasic2020/class15/Code02_NumberOfIslands$UnionFind1.class create mode 100644 out/production/algorithmbasic2020/class15/Code02_NumberOfIslands$UnionFind2.class create mode 100644 out/production/algorithmbasic2020/class15/Code02_NumberOfIslands.class create mode 100644 out/production/algorithmbasic2020/class15/Code03_NumberOfIslandsII$UnionFind1.class create mode 100644 out/production/algorithmbasic2020/class15/Code03_NumberOfIslandsII$UnionFind2.class create mode 100644 out/production/algorithmbasic2020/class15/Code03_NumberOfIslandsII.class create mode 100644 out/production/algorithmbasic2020/class16/Code01_BFS.class create mode 100644 out/production/algorithmbasic2020/class16/Code02_DFS.class create mode 100644 out/production/algorithmbasic2020/class16/Code03_TopologicalOrderBFS$DirectedGraphNode.class create mode 100644 out/production/algorithmbasic2020/class16/Code03_TopologicalOrderBFS.class create mode 100644 out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS1$DirectedGraphNode.class create mode 100644 out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS1$MyComparator.class create mode 100644 out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS1$Record.class create mode 100644 out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS1.class create mode 100644 out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS2$DirectedGraphNode.class create mode 100644 out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS2$MyComparator.class create mode 100644 out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS2$Record.class create mode 100644 out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS2.class create mode 100644 out/production/algorithmbasic2020/class16/Code03_TopologySort.class create mode 100644 out/production/algorithmbasic2020/class16/Code04_Kruskal$EdgeComparator.class create mode 100644 out/production/algorithmbasic2020/class16/Code04_Kruskal$UnionFind.class create mode 100644 out/production/algorithmbasic2020/class16/Code04_Kruskal.class create mode 100644 out/production/algorithmbasic2020/class16/Code05_Prim$EdgeComparator.class create mode 100644 out/production/algorithmbasic2020/class16/Code05_Prim.class create mode 100644 out/production/algorithmbasic2020/class16/Code06_Dijkstra$NodeHeap.class create mode 100644 out/production/algorithmbasic2020/class16/Code06_Dijkstra$NodeRecord.class create mode 100644 out/production/algorithmbasic2020/class16/Code06_Dijkstra.class create mode 100644 out/production/algorithmbasic2020/class16/Edge.class create mode 100644 out/production/algorithmbasic2020/class16/Graph.class create mode 100644 out/production/algorithmbasic2020/class16/GraphGenerator.class create mode 100644 out/production/algorithmbasic2020/class16/Node.class create mode 100644 out/production/algorithmbasic2020/class17/Code01_Dijkstra$NodeHeap.class create mode 100644 out/production/algorithmbasic2020/class17/Code01_Dijkstra$NodeRecord.class create mode 100644 out/production/algorithmbasic2020/class17/Code01_Dijkstra.class create mode 100644 out/production/algorithmbasic2020/class17/Code02_Hanoi$Record.class create mode 100644 out/production/algorithmbasic2020/class17/Code02_Hanoi.class create mode 100644 out/production/algorithmbasic2020/class17/Code03_PrintAllSubsquences.class create mode 100644 out/production/algorithmbasic2020/class17/Code04_PrintAllPermutations.class create mode 100644 out/production/algorithmbasic2020/class17/Code05_ReverseStackUsingRecursive.class create mode 100644 out/production/algorithmbasic2020/class17/Edge.class create mode 100644 out/production/algorithmbasic2020/class17/Graph.class create mode 100644 out/production/algorithmbasic2020/class17/Node.class create mode 100644 out/production/algorithmbasic2020/class18/Code01_RobotWalk.class create mode 100644 out/production/algorithmbasic2020/class18/Code02_CardsInLine.class create mode 100644 out/production/algorithmbasic2020/class19/Code01_Knapsack.class create mode 100644 out/production/algorithmbasic2020/class19/Code02_ConvertToLetterString.class create mode 100644 out/production/algorithmbasic2020/class19/Code03_StickersToSpellWord.class create mode 100644 out/production/algorithmbasic2020/class19/Code04_LongestCommonSubsequence.class create mode 100644 out/production/algorithmbasic2020/class20/Code01_PalindromeSubsequence.class create mode 100644 out/production/algorithmbasic2020/class20/Code02_HorseJump.class create mode 100644 out/production/algorithmbasic2020/class20/Code03_Coffee$Machine.class create mode 100644 out/production/algorithmbasic2020/class20/Code03_Coffee$MachineComparator.class create mode 100644 out/production/algorithmbasic2020/class20/Code03_Coffee.class create mode 100644 out/production/algorithmbasic2020/class21/Code01_MinPathSum.class create mode 100644 out/production/algorithmbasic2020/class21/Code02_CoinsWayEveryPaperDifferent.class create mode 100644 out/production/algorithmbasic2020/class21/Code03_CoinsWayNoLimit.class create mode 100644 out/production/algorithmbasic2020/class21/Code04_CoinsWaySameValueSamePapper$Info.class create mode 100644 out/production/algorithmbasic2020/class21/Code04_CoinsWaySameValueSamePapper.class create mode 100644 out/production/algorithmbasic2020/class21/Code05_BobDie.class create mode 100644 out/production/algorithmbasic2020/class22/Code01_KillMonster.class create mode 100644 out/production/algorithmbasic2020/class22/Code02_MinCoinsNoLimit.class create mode 100644 out/production/algorithmbasic2020/class22/Code03_SplitNumber.class create mode 100644 out/production/algorithmbasic2020/class23/Code01_SplitSumClosed.class create mode 100644 out/production/algorithmbasic2020/class23/Code02_SplitSumClosedSizeHalf.class create mode 100644 out/production/algorithmbasic2020/class23/Code03_NQueens.class create mode 100644 out/production/algorithmbasic2020/class24/Code01_SlidingWindowMaxArray.class create mode 100644 out/production/algorithmbasic2020/class24/Code02_AllLessNumSubArray.class create mode 100644 out/production/algorithmbasic2020/class24/Code03_GasStation.class create mode 100644 out/production/algorithmbasic2020/class24/Code04_MinCoinsOnePaper$Info.class create mode 100644 out/production/algorithmbasic2020/class24/Code04_MinCoinsOnePaper.class create mode 100644 out/production/algorithmbasic2020/class25/Code01_MonotonousStack.class create mode 100644 out/production/algorithmbasic2020/class25/Code02_AllTimesMinToMax.class create mode 100644 out/production/algorithmbasic2020/class25/Code03_LargestRectangleInHistogram.class create mode 100644 out/production/algorithmbasic2020/class25/Code04_MaximalRectangle.class create mode 100644 out/production/algorithmbasic2020/class25/Code05_CountSubmatricesWithAllOnes.class create mode 100644 out/production/algorithmbasic2020/class26/Code01_SumOfSubarrayMinimums.class create mode 100644 out/production/algorithmbasic2020/class26/Code02_FibonacciProblem.class create mode 100644 out/production/algorithmbasic2020/class26/Code03_ZeroLeftOneStringNumber.class create mode 100644 out/production/algorithmbasic2020/class27/Code01_KMP.class create mode 100644 out/production/algorithmbasic2020/class27/Code02_TreeEqual$Node.class create mode 100644 out/production/algorithmbasic2020/class27/Code02_TreeEqual.class create mode 100644 out/production/algorithmbasic2020/class27/Code03_IsRotation.class create mode 100644 out/production/algorithmbasic2020/class28/Code01_Manacher.class create mode 100644 out/production/algorithmbasic2020/class28/Code02_AddShortestEnd.class create mode 100644 out/production/algorithmbasic2020/class29/Code01_FindMinKth$MaxHeapComparator.class create mode 100644 out/production/algorithmbasic2020/class29/Code01_FindMinKth.class create mode 100644 out/production/algorithmbasic2020/class29/Code02_MaxTopK.class create mode 100644 out/production/algorithmbasic2020/class29/Code03_ReservoirSampling$RandomBox.class create mode 100644 out/production/algorithmbasic2020/class29/Code03_ReservoirSampling.class create mode 100644 out/production/algorithmbasic2020/class30/Code01_MorrisTraversal$Node.class create mode 100644 out/production/algorithmbasic2020/class30/Code01_MorrisTraversal.class create mode 100644 out/production/algorithmbasic2020/class30/Code05_MinHeight$Node.class create mode 100644 out/production/algorithmbasic2020/class30/Code05_MinHeight.class create mode 100644 out/production/algorithmbasic2020/class31/Code01_SegmentTree$Right.class create mode 100644 out/production/algorithmbasic2020/class31/Code01_SegmentTree$SegmentTree.class create mode 100644 out/production/algorithmbasic2020/class31/Code01_SegmentTree.class create mode 100644 out/production/algorithmbasic2020/class31/Code02_FallingSquares$SegmentTree.class create mode 100644 out/production/algorithmbasic2020/class31/Code02_FallingSquares.class create mode 100644 out/production/algorithmbasic2020/class32/Code01_IndexTree$IndexTree.class create mode 100644 out/production/algorithmbasic2020/class32/Code01_IndexTree$Right.class create mode 100644 out/production/algorithmbasic2020/class32/Code01_IndexTree.class create mode 100644 out/production/algorithmbasic2020/class32/Code02_IndexTree2D.class create mode 100644 out/production/algorithmbasic2020/class32/Code03_AC1$ACAutomation.class create mode 100644 out/production/algorithmbasic2020/class32/Code03_AC1$Node.class create mode 100644 out/production/algorithmbasic2020/class32/Code03_AC1.class create mode 100644 out/production/algorithmbasic2020/class32/Code04_AC2$ACAutomation.class create mode 100644 out/production/algorithmbasic2020/class32/Code04_AC2$Node.class create mode 100644 out/production/algorithmbasic2020/class32/Code04_AC2.class create mode 100644 out/production/algorithmbasic2020/class35/Code01_AVLTreeMap$AVLNode.class create mode 100644 out/production/algorithmbasic2020/class35/Code01_AVLTreeMap$AVLTreeMap.class create mode 100644 out/production/algorithmbasic2020/class35/Code01_AVLTreeMap.class create mode 100644 out/production/algorithmbasic2020/class36/Code01_SizeBalancedTreeMap$SBTNode.class create mode 100644 out/production/algorithmbasic2020/class36/Code01_SizeBalancedTreeMap$SizeBalancedTreeMap.class create mode 100644 out/production/algorithmbasic2020/class36/Code01_SizeBalancedTreeMap.class create mode 100644 out/production/algorithmbasic2020/class36/Code02_SkipListMap$SkipListMap.class create mode 100644 out/production/algorithmbasic2020/class36/Code02_SkipListMap$SkipListNode.class create mode 100644 out/production/algorithmbasic2020/class36/Code02_SkipListMap.class create mode 100644 out/production/algorithmbasic2020/class37/Code01_CountofRangeSum$SBTNode.class create mode 100644 out/production/algorithmbasic2020/class37/Code01_CountofRangeSum$SizeBalancedTreeSet.class create mode 100644 out/production/algorithmbasic2020/class37/Code01_CountofRangeSum.class create mode 100644 out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian$Node.class create mode 100644 out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian$SBTNode.class create mode 100644 out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian$SizeBalancedTreeMap.class create mode 100644 out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian.class create mode 100644 out/production/algorithmbasic2020/class37/Code03_AddRemoveGetIndexGreat$SBTNode.class create mode 100644 out/production/algorithmbasic2020/class37/Code03_AddRemoveGetIndexGreat$SbtList.class create mode 100644 out/production/algorithmbasic2020/class37/Code03_AddRemoveGetIndexGreat.class create mode 100644 out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$SBTNode.class create mode 100644 out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$SBTree.class create mode 100644 out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$Unit.class create mode 100644 out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$UnitComparator.class create mode 100644 out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight.class create mode 100644 out/production/algorithmbasic2020/class37/Compare.class create mode 100644 out/production/algorithmbasic2020/class38/Code01_AppleMinBags.class create mode 100644 out/production/algorithmbasic2020/class38/Code02_EatGrass.class create mode 100644 out/production/algorithmbasic2020/class38/Code03_MSumToN.class create mode 100644 out/production/algorithmbasic2020/class38/Code04_MoneyProblem.class create mode 100644 out/production/algorithmbasic2020/class39/Code01_SubsquenceMaxModM.class create mode 100644 out/production/algorithmbasic2020/class39/Code02_SnacksWays.class create mode 100644 out/production/algorithmbasic2020/class39/Code02_SnacksWaysMain.class create mode 100644 out/production/algorithmbasic2020/class39/Code03_10Ways.class create mode 100644 out/production/algorithmbasic2020/class39/Code04_DifferentBTNum.class create mode 100644 out/production/algorithmbasic2020/class39/IsSum.class create mode 100644 out/production/algorithmbasic2020/class40/Code01_LongestSumSubArrayLengthInPositiveArray.class create mode 100644 out/production/algorithmbasic2020/class40/Code02_LongestSumSubArrayLength.class create mode 100644 out/production/algorithmbasic2020/class40/Code03_LongestLessSumSubArrayLength.class create mode 100644 out/production/algorithmbasic2020/class40/Code04_AvgLessEqualValueLongestSubarray.class create mode 100644 out/production/algorithmbasic2020/class40/Code05_PrintMatrixSpiralOrder.class create mode 100644 out/production/algorithmbasic2020/class40/Code06_RotateMatrix.class create mode 100644 out/production/algorithmbasic2020/class40/Code07_ZigZagPrintMatrix.class create mode 100644 out/production/algorithmbasic2020/class40/Code08_PrintStar.class create mode 100644 out/production/algorithmbasic2020/class41/Code01_BestSplitForAll.class create mode 100644 out/production/algorithmbasic2020/class41/Code02_BestSplitForEveryPosition.class create mode 100644 out/production/algorithmbasic2020/class41/Code03_StoneMerge.class create mode 100644 out/production/algorithmbasic2020/class41/Code04_SplitArrayLargestSum.class create mode 100644 out/production/algorithmbasic2020/class42/Code01_PostOfficeProblem.class create mode 100644 out/production/algorithmbasic2020/class42/Code02_ThrowChessPiecesProblem.class create mode 100644 out/production/algorithmbasic2020/class43/Code01_CanIWin.class create mode 100644 out/production/algorithmbasic2020/class43/Code02_TSP.class create mode 100644 out/production/algorithmbasic2020/class43/Code03_PavingTile.class create mode 100644 out/production/algorithmbasic2020/class44/Code01_LastSubstringInLexicographicalOrder$DC3.class create mode 100644 out/production/algorithmbasic2020/class44/Code01_LastSubstringInLexicographicalOrder.class create mode 100644 out/production/algorithmbasic2020/class44/DC3.class create mode 100644 out/production/algorithmbasic2020/class44/DC3_Algorithm.pdf create mode 100644 out/production/algorithmbasic2020/class45/Code01_InsertS2MakeMostAlphabeticalOrder$DC3.class create mode 100644 out/production/algorithmbasic2020/class45/Code01_InsertS2MakeMostAlphabeticalOrder.class create mode 100644 out/production/algorithmbasic2020/class45/Code02_CreateMaximumNumber$DC3.class create mode 100644 out/production/algorithmbasic2020/class45/Code02_CreateMaximumNumber.class create mode 100644 out/production/algorithmbasic2020/class45/Code03_LongestCommonSubstringConquerByHeight$DC3.class create mode 100644 out/production/algorithmbasic2020/class45/Code03_LongestCommonSubstringConquerByHeight.class create mode 100644 out/production/algorithmbasic2020/class46/Code01_BurstBalloons.class create mode 100644 out/production/algorithmbasic2020/class46/Code02_RemoveBoxes.class create mode 100644 out/production/algorithmbasic2020/class46/Code03_DeleteAdjacentSameCharacter.class create mode 100644 out/production/algorithmbasic2020/class46/Code04_MaxSumLengthNoMore.class create mode 100644 out/production/algorithmbasic2020/class46/Code05_HuffmanTree$Node.class create mode 100644 out/production/algorithmbasic2020/class46/Code05_HuffmanTree$NodeComp.class create mode 100644 out/production/algorithmbasic2020/class46/Code05_HuffmanTree$TrieNode.class create mode 100644 out/production/algorithmbasic2020/class46/Code05_HuffmanTree.class create mode 100644 out/production/algorithmbasic2020/class47/Code01_StrangePrinter.class create mode 100644 out/production/algorithmbasic2020/class47/Code02_RestoreWays.class create mode 100644 out/production/algorithmbasic2020/class47/Code03_DinicAlgorithm$Dinic.class create mode 100644 out/production/algorithmbasic2020/class47/Code03_DinicAlgorithm$Edge.class create mode 100644 out/production/algorithmbasic2020/class47/Code03_DinicAlgorithm.class create mode 100644 src/aaa/Demo1.java create mode 100644 src/aaa/Main.java create mode 100644 src/aaa/Main2.java create mode 100644 src/aaa/Main3.java create mode 100644 src/aaa/Test.java diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..feca8613504bcd7430524202412f605a970dd548 GIT binary patch literal 6148 zcmeH~JqiLr422VS3&Cbf%V|7-HyA`u-~~i21wpZ&qx41vI)z6#m+=T zbn`f`MFtU>!%bynVPcAXCwIBY>3lz3j@RpDteEA>YT$!Ro{xoGkN^pg011!)3H%HJ zJGWu;MJOW)kN^pc1nmD%;HEXTh5D}p!AAgSkF*=sK1)E0C7?C6g(3sfXoW_r`WRw) zZ-`o{NKSp&Hs}YZb^Uy{)~Y3 z+x>QfkIJ+4?ei>u$gHg!9O~r=FP8vp>?mHs-SE8F0$NjBC^9f!1RMhc34E2n6Mwc5 Aa{vGU literal 0 HcmV?d00001 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..74aaf9e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/src/aaa/ diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..73f69e0 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml +# Editor-based HTTP Client requests +/httpRequests/ diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..644a944 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..4c0be1d --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml new file mode 100644 index 0000000..797acea --- /dev/null +++ b/.idea/runConfigurations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/algorithmbasic2020.iml b/algorithmbasic2020.iml new file mode 100644 index 0000000..436d436 --- /dev/null +++ b/algorithmbasic2020.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/out/production/algorithmbasic2020/aaa/Main.class b/out/production/algorithmbasic2020/aaa/Main.class new file mode 100644 index 0000000000000000000000000000000000000000..cf6eef6eac76b92af6a5f0b9109ead41e0e9d358 GIT binary patch literal 2051 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class01/Code01_SelectionSort.class b/out/production/algorithmbasic2020/class01/Code01_SelectionSort.class new file mode 100644 index 0000000000000000000000000000000000000000..4a5b908d5c76f4359005f664ccb47868f2ccec66 GIT binary patch literal 2879 zcmaJ@OK%(375*-VlXRp;Zs?JshZ8A@^{{L?ikV23V=8iLrM5@pSQ?4s z(Bx2wx)xBNi>}*jifZGH7fBbckOtZ%0TLj8qMHWDrpp?2)$hzukHA7m@ZLM;-gC}( zzH`nUe)qpG_xATOfz1R$&~$_iL=aVIU$-``p^{Zu9a>mfw+o&^bi%1P-jsrty||P> z3~?O^1E*jpqzfghULPJAnsJNv@W}nVU80WTR`PC*s^R)4R#idIF6VMNQEo+>j&=j5 zkv#C#@SM`n)mqKks*8fJ7omb2e+ivBx(uAbS%uakX!Dl0Mqo9oQgq8cu5 zKnCXzZ2NKKx9XlPr`!f1blRPt}~mv7^nw^Jz7{DPoNJMbo|=DtH>&JoM2xeQWbAv;za`zX&+1j{gMIQ zKUu11(Er*abPpOB!Y~c5+7-KIdG>8TY@afckR`LrIXQUA!0UKJAzpB+TZh|ZGT0t7 z@TSn-Qa_#~QGDCLW!Xs-+;Y{T3%4fX2?LX0-gT$`&ZCA^3KB_scV&0lz*S$#$LqU` zVTO_3bP9HF4DTqk%{B@fq^Rd1XS>)dVZJM2lBTd!43Eq?75iqRykgfDt(6ib$vL-R zm6oiUBhO7?*jsa$fb(;|RBz)7YMsBFLagjma+RX}DIXoC-m29ULd)D~$$M5|W8SJZ zEo)v`Dzt2Uns!KxDbtf)Zxjl)T_nW2I_~M<>R9`+GD#hil6M=mf<5a9Io&7q*`QP$b+5UuSNCdG zb>8;Y++w{g3MYYeZ0IOSZL3Eek4+chWu=YxJ zy>HHSHyYLP7a2Gv`I+M4R@FY?_;Heg3upXzi#1KmSfx_l@$B&!T;@^rC>Xg4yJ1GI zAG@xD>AmnmY$rk1!7e=i%SYK&L3|`F#`{q|aj>)z<#>ZnL!1@oi1~M@FSrOH$5FN^ z#Csf#=K6ii@hL97M~NtZ4-H|?Gv+sln|qNRgul=xQs!Q`xP#%;WGeh%Dr4^L;H;S$ zG}D7S&@+z_PET%Y>hb=+%v5?8`nKZw2XU?Wu1zGkj&Y3hYHmd*+IVfYGlJ6?<~)WD zUiYoI#vOrY5<-gKdEBIhGq`{Su0m+RC~k2jfz03o+~%C;uM4pR{tKm^qeZFYw0ef< zf9OfPNvIN7fi@+uHZwIiWu^#y!Axfsj`&IX+h;j;6X-d@NgaZrTGO4Z4j{Do07KL` zg+(7~T<)r-!`C?nY1l=}ksEoZ0WVXj=Vz%1qKV6O+BEPP`0C@?;d9{!zu!g2#vi{* z%xhDb0kWSN$S@OuG!;z61wRG<9Qd3%0q+FR?D)Ab+DQfiW^aO5<<&0DEY(g=`8yp{%!=fm2NPM}(z( zSS`?^&k+r9ohB~66`HvIK?8zonz;1-Z*fXWnsY>ZLW#c$KQZ_E_x>WHCgPWfw?94T zi+tEWg`dzyz~>-=f*#uGBZ+Ai$yKCTiLc-~YjhT`;avuCg8|I)#QTR~yviCr2xA(* z@#~hjaQ85bHpF7OipQjg+n+IQae09?1KFl~VIWJ`&2HSmnZKc%rTiuN!c)BBx7?4E zJ;lYN#tV49MV>#P%{=*BWL4+M@Lq5#NrmK)xpW&hVcROI~}7Nb>qq%m$Vs-4QvH4Xa8<+EK^$H%0-pm1|Ipmd`xR; z{vVKZMQN$ePnXXApYpkq*4m`cdz>}YX-6)mC@n}Mg{WQj8%ZOgb>gv@g@-I1X(`DC zh$^yAb1dE!B_H5TrhZOG-##rxnqq_~&>4ir0OT@%$N=OvRSZHAc$H5Ht{xFY1Ks}z D7Tq=- literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class01/Code02_BubbleSort.class b/out/production/algorithmbasic2020/class01/Code02_BubbleSort.class new file mode 100644 index 0000000000000000000000000000000000000000..c0a8bb9379c0a913d4332dca247b74d8fefb9e0e GIT binary patch literal 2817 zcmaJ?O>h)N7=67nv$MNQeh4I(>?R}vX;Y|fr?ON>*?pIAi!Jvlu(Iw~V;QKzHcz;-mOFI4fI zT+fM8$yzGQ06$J+fSkS)jXIhP?7|xYwVS-gEpMKzN>(B3=6zPDqG&-}N5ViW+SalC zB&L?io-Jp&6;f&(^I;sf=UmAtcvD`A_R5}B z@W`$)IocJ32f!W?=F%~AVy}*U2KFN;BAKL4p2# zyVN>mpa;DKp0f*f$@1(Ae%iid6d_4vr$^<)eglVaSRk5li%T1?sbuhaz`$El_So!3 zg=Ey*1_u4%jGHf7#CJ<_c*wvpu;RK?K7FfV<$@{_>`Da3na_liu{$C-DNuK&l3An> z?Kj!l*$$b^DVa=C;+!$?t`G00Rb{10uP}1VDcBR0{H$HNXwftR4P$P`%3ZQbj(n~T zs@}Xq_2Xmz>9n+faCnXKB8p;_N&=y2KGsZmR%UVBDps+?0u#wwpH4ZSabkqMOIEI8 z>p0J_k}WOB;J%>gXOp*_f_w2HF(aCcqyFmM$>CMDkZ(ez>}`)mA#Tx9JjrBH(Ra?V?G843py61i&?GC z&E4V@K6V%F9$KAM3XFZm%COE$0$;!E$LhoY^ekPLv&)@huDe(%re9D0rIA+xFD@1B zEvCP$P;joKU*1erh!HE7n{qrm9RXzziFN^Fv_RjF$Wz8H>$oMb_qE)%qO603Y5V`F z+&@8n6fMGIQ2wHzy%Fa9ET4MV3bva0Bg6xCLKx*;zUCm_pULE z3WaUj{25VmRl5WAfw`(?hvMI&OF5Q^-$BAmq|AgmlllSM%mh0t(3eBv?%E&AV(sqQ zZ*ob+UveLzL6$ML+jx@hL>=O&$3C8>DfSO@Y!Hn;rFO&Luit(LG2gDo@EOz-{nz z#<{&M>dY4_*s=K4li0X2+jwKX9Khf!IyV9N5d+?qec6 z*x9Dg<*#cJyOum;3R0b3Tx3uFdhvmumcb)XvI_Y!8wkBXt&U6L8Pko*L%PcIOCm{x z4)ZB1aNk^g5*wo}Owz3Dmd=>;t?+mECb2fA22xR(ZWw)ZLO<(xh?@5k{K$sdHB>XG zKH;mnZ=)wJla}yl)j$cqKseyFoxFJ7S9$$JR+86o^3uDX(wX!xTTQvg5x=M2GgrG; zzmr2%#yiQkJCX8-eA<7h_lObbnIciJ#Pu{_16OL{S_vG-9-N@cBRGgt7{F;9Wq+97 zllw}Vct5}W>uDUvhrV^m3m-;KBFlu3rb&{v`al_qOKEpK zL^DnNn0nz6_ACq5{!flQLf7VQ3v?c*&J(o4In;2$INJ{Tbw3L(2{sX1XDaJnPF8i6 zdn*P-la!vZGErQ?bihbhjEV4luHnE?efC&=c32%yl>x0$<6+R3XkEdqVRD>&L5mQDILqRN1J7tv*noPQMHYj0Evov$lfM@^-}UZDut= zuYfWt6fjIyQSvfym8Zrvmg73haf4Q$VL2=wW3wz+hQ+$dqTHml=h<`kW`R$O{LA?& zTqR0^y2#>$iO}K~NB2)8sf^r6IYwS%t1$k$zeU2tklQB2=#0N@6f&9N`ZLu0DvcsH zkmft}Ahb2Y(W;h^Kj0t>J*J~`jjC$ZVT3rKleB^?mkPn=67s+lnB$d)%cmH7MU>#7 F`CnGAC%*sy literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class01/Code03_InsertionSort.class b/out/production/algorithmbasic2020/class01/Code03_InsertionSort.class new file mode 100644 index 0000000000000000000000000000000000000000..dd714e614436435d7bac69c8bc86edafb388a14f GIT binary patch literal 2936 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class01/Code05_BSNearLeft.class b/out/production/algorithmbasic2020/class01/Code05_BSNearLeft.class new file mode 100644 index 0000000000000000000000000000000000000000..8834c363e99e2c88d03f6f0da7a2e4a9c239965b GIT binary patch literal 2399 zcmaJ>&r=&!9RF-~HydIK7#e6u(n5tcL`s6T=?@@np<+`5t%Oo7YFUy6wj^0*v#D(_ z&Nw(acE+>z;L`;eo6{2|$HcLhDWamYyu>mBr-c`I|<;k>DLRE2fi?AjkV={P3YkgFk>* z5RlNkoj##EOH8))O3^C2$rqZ?j1~>80lbRfOW654RmTunR*gG^axRQ%C9l|K#mPIi zp_hk(0QLtELc4^Hvc7DLS(SqBTr-^|MpZ|zI90BVXZz~QUD8}@Ru+f+IDoK*&Hy5a zN@&{yUxK*FLKV%;ELCJ^54!v~jMp^u1kj5k62gU&Uah7ElVeuV zNS(Mbnx8auJ7+8qxoy#?7`E;hQ?4rKZCk%XjpEsC-)z>8IQlds0(c$$Tk6ytvy^o6 zSesI{Y@(>~*{tAm7y|($k>Z47R5{`0M7EDWhw(-LZ;F{fg`0CSTPYg1#l(pK(gNP^ zmf#|b%1(*OP7{gp&G<0HT_(+f(e1;CgqHDIVVN>^EwD9;-D1I6v4B!4qD-db%!)Bt zE6*GDv_4o;IrFF2M>BYnNoxQ)a*=tcUi zWK?@{mbF}48QNX`j**uZPTyHE_DJ8UQ2kvP+Ij055Mz3&ls6q?$cF_Uqtrz|W-Gh_ zW8#V!RSi6>-d(lrMOnkLgoFQ|$_r4h58X7nhtCDz1+C(K&#{+ePhzVkeuVUxfd}XL z6-gY#D8GS5JcbMGHHllqk#mfHh0ILgq&$*%suVMxv=WVdhj=s=Eh=~C(rO~44n!WH zC8Va6kjjiT_}I>ktZn`lQXX-s>~1%}w^BfR;D^T8&rMsfkC&<$U5t9rihcw!i2XQD z0|;6fZp|kQZ(*E7Ndj-%v9Nzc(O zJ%i#Q2RHDnOR|ZB${~o5Wz%LRHH^8t$L)j%|AWc1+=>qI{EZRNH@yYyb~RK z4g}FIf_O-J(xpPUe~E@0L;y%eMoKJNsbDwWOTmI@N|Ad^0 z^^;JnKNi^dnw-$zNx(!;8$=<5L-wrxQS9zxXeiW zQnW-4#LrM3%fk_&SjP|8mxv5JK^w4+ zj#Y`&{@~a;V!~^6eg|10cq|H8soZxTk2%7&n@&5*;}$&I-9zkjc?xI78yYs0Q=da3 zqc9mwAzx=CIYjd@_g=7TxYa+>TFfYEMNX?BHS!P((bxvM&v?V$4IGVai5P2$nAXDH zkhXzi^=9x}q(tIzQV(hCILWq=u(LDBj+|E3(6p+u(EB1=`3An=nKh`v;dNxTi@roR z3#ZCBMIWCg@iUZqh&CCfeMVS(hNYjSyU)?X=ULV$ZeR>0UP6nbHgj+DSiYo%gg{d) zHHsNm7B5$3Tx)4Gqv?t!Zpb}M<0@MjUocY~t{0!V2QGa7se9luS$u+Pc&~9ol2A7Z z;??jzuZcwM|H3>yn$vJ#lL%^K0v--%xK8j7xP=EF;v=>`rrhA)z#@BoMoYNKBEtUw DfBxmV literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class01/Code05_BSNearRight.class b/out/production/algorithmbasic2020/class01/Code05_BSNearRight.class new file mode 100644 index 0000000000000000000000000000000000000000..14a836be22a01bb697e429810bda4fb927f9fddd GIT binary patch literal 2403 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 Rgi@ISksQALoID?X@jqdOh>-vQ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/Code01_ReverseList$DoubleNode.class b/out/production/algorithmbasic2020/class03/Code01_ReverseList$DoubleNode.class new file mode 100644 index 0000000000000000000000000000000000000000..050c8c0ca56535692fc382356b5105fd4a46ca24 GIT binary patch literal 509 zcma)3OG^S#7(Jhkjx$YZ_OP@TL6N#hqh->@kc7dY!fjl~OI?{}U>?%nY7s$;en3Ae z`|cpLh@j0q-{YL`bw9t}KNbu0ux}%Wya~fW0YyS(Cg!5!i{PPiJ()=_AryNmP{{=$ z-)xO7lwg^#9jw419C^No|$OMA|OKt8j;XbxLr2HlEKc2yup>C;3;cY^y6s&42Be=H)U{bkTd9#zbusYnFD zz75mJlLMvswcj(J=L2@7aXK5Vpsd51FAbl*h z2&-7ju)IXR3@RL7=jedhns2w?K<&mW%op}@sPenURe)_6sKLSxHZm_`V>7G8I&5(l W{wC&WU5$AfchO+9Ia6YL57sxr@@mxp literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/Code01_ReverseList$Node.class b/out/production/algorithmbasic2020/class03/Code01_ReverseList$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..2f200e7e38054a1be4083723198954b3b1f1ba5f GIT binary patch literal 476 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$DoubleEndsQueue.class b/out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$DoubleEndsQueue.class new file mode 100644 index 0000000000000000000000000000000000000000..dc700117ceec68c96d8d799dc8f6cbd25eae69a5 GIT binary patch literal 2155 zcmcgtU2hXt5Ixr)*{r<|!NkE3LIVw8uM-lIloD(LX+9JxleUT#seP$7_6n9dyOzC1 z@Q2`~4^%Qj0*QydMCxxsz?t1mQyhc{h(7p!%$>bw&YYR+f8M-!_4X|)xRF8(aSaIr zNen0q-?tuEGfm6AJM+`deY@@}3{)J~@s||hh2pk`L4~<`)9Q3)=Vw;DhCMs~`>NO7 zY1(UUqw`DG?%FkP%eU%(EW3?hJGn`(6f~p+Bdw4tRQplN#cdrK3~4xKU>L_0ZX6Ax zF9e0eJ=iy{cBSGStm zR@;$%WK8(?oQ}fHBLenim9V4l-~OnzkFfe>SMSqGTaCtg+uPj;)Qi`N&^L&i`zViKKa4(eQ#GG-SS!oSBw;jACe(iD2BI2&ify0PG@bm?XKkrT=F?z%?HOj_2sH%vo_xn$MyB;v$ao9OW1| zfp0k)p#vsyfxCx~osET+k8j!+WVLoq~I60JI7uQ9Gc8;KG(MVIN%;FT3VJ!Hu%7x3-pHA$=s^J2n$s5J8E;4tgq3!$klZ$@gGWb91TN=bR43msHXz;4$efq z@Jwo2G)p0_zs4Dgb}|xemM2#}PA>aVa@ij8q$=EnpOE|@xmzT+OmZs>X_e&GNN$}0 zZxH@A>HSD@)vrKqj_C{=x5im|G$WGiK}$SABK{{0p$1_C{~Ux6HgM)p1B*qnD!EJ| jmcGU3B}(K1MUcnjD!vcqYm^Jf(xOqoGMQ&MSD?QGd|jIS literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$MyQueue.class b/out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$MyQueue.class new file mode 100644 index 0000000000000000000000000000000000000000..18c25805e565022bcda127404fbf64e7d1f96198 GIT binary patch literal 1412 zcmbtU+iuf95IviubuMlb(l+IOEnug#34{uXgdk{I6)6;mhTNXoS4*a9 z?UbH%_VljLFkLe&!>=>MCAlpi$?%|Ss-9P_l-6xcFIQeS?4V=n8csOkEig2Ga}C79D`tZ8$HJ# zgcW_skZKt_mg)yC32FSFkeZ@Y>s5vX?+in>X;}Jp(Cg@~qEd?(@=d#|nr+oJxIYXg z{9VIixHlp9unR<2IF34Sej(TX4f3}PC-8Qu%YD`4UCxi!m1;r_0^Xs`0oU`TH3p1);#zJS{dD-(?(gZRXaCa5gTWCMV8+rRs4kX@;-7$(ENu2 zxJbeaVGGfRLs&||4csI!PH=R_38FKJ&LUYd?TT2Wd`{UQkBdrj%6-g#pnW8U%Le*? zh)9l!;1SLdAum$~Jw;mof_(b@2=coVAt#2|x3EI_F|48#+A{8t%~M1`85Po>A$u38 EpQqeC*Z=?k literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$MyStack.class b/out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$MyStack.class new file mode 100644 index 0000000000000000000000000000000000000000..c87023c75556f7308f19229f55b6050bce1dd314 GIT binary patch literal 1409 zcmbtUYflqF6g|@xwk<2v^78#e-4>x$Bqp|E43A(^F@~lQ5;a3RfyH*Wc6UkopZuVS zLZXR3z#k=^X{$)f2dZD@&b@Q*IeTCGCXyHx7?PFB zO2e(KDp?U2w+h`Q$)!r#f84|bCh1>y>qq`$R;o8ZyPr340T%@f+gq;H{bsA4n*yE? z1}*fO1mf#%&?u`FTbC()s=1!kb0H92Q=Y%-dcJ{s0yBNhp@8|!aa3bb?~`H^M!E)* zlk_W|^WUa0{bk(+saE^_RrbpAnzlN8$)t|4p<*6mMFv6K%&1 zEJJV`cL=5lj@~pu`_1B8JFOINX-qO+Q!Y`{Nkui~KE^)s-cClR4amQei1s9*Et;c^ uJk1DhBF__$&wc1ZR;NOabg=JYhVdcHBGZyt+^0;^Vjzn-=08OF0I^?76+4>% literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$Node.class b/out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..cce0218c7725cd959b3f763d43a0585a14dfa82d GIT binary patch literal 824 zcmbVK$xZ@65Pi++jJON#;&uRxV$_RDNDOK;AsEAit7(Rg4vsx$7NVc!!I*gP1NC;zr22Ypnz2!A%x?IBoIZ6VYJCxJa2P(l|QdHh3PZI3YN6| zB11Tnt!Ws57Kfg|AQBAQrp-NXYbRfF8e(hb^2iD5wm6mz?;;R^Fr2E-&6`8nXv4J% zMKMHM+z#j*FaH)hV9=`8mE?ZlQb5=+=q5rERK{+(e=W-1`$t-Vbc;$^ihEK{W_kIAMSPAny!`_or!s;6fds0hzLbv!?gC5DZ@UYH?qCZ%voY6OI8O?@wx zX+lB(!eDAfXdfaJ!Z2AQ82!OxWR3sAG#i+p*h$K$)2Vp$+%s5i{R#2MHfxghVPaQ% zgcvpAND)ePqA^8SEgjQs^_ec;*pE-u)2VEhcskY`=E)zz0v6k6nz~U;^iW7+1==T1 C@4(Uk literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue.class b/out/production/algorithmbasic2020/class03/Code03_DoubleEndsQueueToStackAndQueue.class new file mode 100644 index 0000000000000000000000000000000000000000..f5218d638887d185783ec2d8f4366e6bf4a3aed3 GIT binary patch literal 2891 zcmbVOTTql$9RHoY@Ub5Ya#_$#kO)Lrl~qhAK+Ql6TTp^Dv9b^NfQ7xW`>lnUT_l~R z$?Rfj*unUPBBo`Ak3)EDcB>v6p++-YdN!<$2W=C-13)ZDAckpbu5hQ4V>MV{0z6j)?N7dQL? zZ_=_$a+V0VW;i~7Xjt#_`D2EP#jvVaied#NPAo&IK+a5pZJII2elN|vl>qs+M42@h5Z*dp;5 z-OO8BHphk4Qm{s#a=zlH8Bg{jW797%f6_^<6YFp{BaDP2EJ9U!FiCmoqE~@Wf`ydi2+1L)6-*#ipnhQyrXbEpX(L(1h1)O{X~Q0q z_XjVjMDQ~}m%I^q#mwfV^n{=3Xwd;?RxnTEM1449XPhFbi!xr97W0zj+b5q{{_o=6%T;i-doDnHNy38N{FiJ%!6W>4CIqkt-P}3k zeajQ6{4}Md(F)I1I96VP-FnV*h16A(l4qoB=R7MXpq!(e)wI2gc7f;k`aBO6hmnsl zUg$?qjH7(eUNU_aCG27^9;GZj;4xAHkCV3Z1#~zV$UZ!g2*mOYYzz}(b#7l%-iq7} z`Pmz-b+$rV$ywo=M9!WI$ZfDsB9BBtL&hXrB#Ii8Nh~JeZpgIOISL(1&*ImMxTE;! z@Uc48txVv~Q&{S@7pfOgF@Y+#lB8Dc9!E0;UGSbfeN%}tw|xR@zeA?9w4Uol)V+hO z^JvPye*!HjM_EZnCGL#EEYs0;ccw{Q!h`I^IJQl@y17ibJ7WSnrL)XS=oI*myD^6t zpDG=*iSZkM$`HC3g6y`VX zDymQ|PB_xF zUzVSJUb^$+-NVmsXTRNgzj9}G<^CKiQKZl;cike8%nVn=MqG!x80Z|0vTvJ;ZD<#W z*v7P*wa1NVLS?d@*)X=Rw)pyTXf1 z=er1ctNOKh_LxV*9Ae8zT}*6QMAJv@BCE<(*?yix^N6L-YMRV%&`LbX6ZCjesOEK& zEcJ|yWZ2Al3j2^=!_vRX(vNP^3iNmiBFW2M>}Hg9-1edR*s1P`57bcs8m|Dwy9Yg> zxCazZzgkBmeQKsBt>kD!2T%NNw67uR^NBj>;hwcbakBJbuTONGSx`DwCJHGppad(u zs=bF9PggB3^mXO_cq%p=<$pqcZhRtW&AlJY31tQM7!3&CRXiB(AYor dQNEV)LG)8Nfc-e&<%1Ytj*%Xb;3GMj~W@mwV(p*hrg^JdL$F*eXam$S>- NHg>r3>q=l3tv@XHR_Xu% literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/Code05_GetMinStack$MyStack1.class b/out/production/algorithmbasic2020/class03/Code05_GetMinStack$MyStack1.class new file mode 100644 index 0000000000000000000000000000000000000000..c020d9f595a312aa9d367d38f0c13db9d50bf18c GIT binary patch literal 1416 zcma)*TTc@~6vzM5R<>-HTPe3z1k1%zfg%?#v?7WiO+ceHC72kq)Uhm}N9Knb}3^E%BkVXQt=;&u`8-^Y#0OPX`CcAgjX%zlMN;V`yS% z-!b>hRLQi9sT*56ydW5wGL~(L1qOd&EUzKR(59Sf!YZY5!Yn-0p~2sb5DX1123pa^ zFjOd+jx#lrS}Nb?Q*-yOaj|aM%6)kKiTa*lXm(`$Ra2M@9c#bIrln+ufw0sIDo>J- z$sz{2(9NJ(&hl{8#8xI(|6WK90p}MT+ zk(TNw3=Ck9AyBC~+YFBdm+NGI61fguc2$%LtI*}~f8 z%a04ZBCN6dXOPQVP3jmyQa0u^Lsuh3PE;+sm>$bZ+zA7dNKvjz zxk5sTzq0k>jDcy%7PM@UmsOClvj*m5Y@ovVLuyCPD%z%~RXJVz_jY6&%5Ye&g*3&= z4%1MqSvJ33+uh>T+vZk@PQq*Df?3L&RZH%@!+_Yf9EOp#|CkRcPHoClL2dqsv>8~I zp(Q7WX5FlKlE+k28T1_0u)tR=nY`!Exto+dpaNXyj#w=_LchAV+Iy+5M2&qXZ3fKqrnqbkdb0m_RrE*P|%9DHmn(D5SN3OT@8A zrvdo-I?0~Iut)ZkRHgr{Os2?MK4N4ud}<$KpWUgS=h`wj*$Xk*C5Fh+>C+e*pTvL;(R@WiXPM+3 zR}>8TaTh0$7DzPP!9#)5nU1>1ltSmxIOS06n2VDbr)4#%H$yEuc4ft2#G zKwsv&00YRnIBNis%GVVm)yA&^L%W^)(e}04lnc+QvZ+4HAT5n0 zQw}C^&Puglzb2wV)KON@D6JK_ZQd|F&Dv*Io+?ttO!HbnL zoi<(azv)QzKLm=zMZVpjxHb9 m$TMKq4sMffrGsj0FO`KGEbXGM`S81doBTQ?KR}&J=>7__kR^No literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/Code05_GetMinStack.class b/out/production/algorithmbasic2020/class03/Code05_GetMinStack.class new file mode 100644 index 0000000000000000000000000000000000000000..f9c1d2c22b76e47e4d5ea05fcf8f56ee4da6dc49 GIT binary patch literal 1120 zcma)5TTc@~7(LS#wk?ZbxhbN8Tr9NG0)m&KCX#5Hw5SxTs1dhiY!};Yv%A%h`0TTZ zZ~80rp(L941N>3qnRXG0VBCk9?=o|~^PTzj$Iq|d_x7-iR2V+^H3W2Ypi`iC+jwmx zDuz``+$(I$qASq3Y+9y!Q@|gc&T9w?j2A10<0KanE43||T->}X-K=TlT%-7EBD>St z=fcq7S4)=;9o+(fdc!Gmi>9aZA@rbE!$}s4&yY2HJs5gqAKs}y!!8k}?}#)NbJRP{2~7T@$nR%lwf2R1 zfpD(Yu#57Jspt>={r0m;Z-K5=>9|>`T6HvB`LA&yx}LTyX|Jfsk|ZD8AEX0w9%Go~ zxT?}o*<29c!1~hHo3k)83w8-;0=m+i!Ho^ z#CyENN0eIfjJ74fEVTsDKOl)Y3bcXSn5U&AT42V9%dDZK^0^WGz zjDn*x>b1||bBO<@(N=I6hskuiyZ!e&?Vo=C`RU8?F=p^kMgTzxAq6$4Wr*yl2Wm=J zjY4X5dynTGhT0j;(41L@U_6nNP{+{Z6}gV4r#2ilzb`{VFpPRA5*idVqKRQLudBA5 zo=DA^J3Kx0bo06C)!NyjrSl>;oOPGGeCW@!8K#%c)h$HV;5F5@_;YUU}8= z4c&*h`1sB755X2hg)IshEoh}DfsQJ+q|bJX>O%;~y~H?++dl6y@rpQ_1%CHO^b7Rl zAud(SG!hNSfB=x&6s$@7y>c*&k3A0hHMktd0K^eplq=16w{ U_c8B%FJO_rWfE171!NKa1rQiM`2YX_ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/Code06_TwoStacksImplementQueue.class b/out/production/algorithmbasic2020/class03/Code06_TwoStacksImplementQueue.class new file mode 100644 index 0000000000000000000000000000000000000000..026c794c3c4bcc8f0b46dda8034a91cdd7100e15 GIT binary patch literal 953 zcma)4+iuf95Ivil6UV*K(3Cs9QJe;n(9#x21rL=fSu%ynQ6$6z+9a#s)?P=p1LCiM zhg1TI58$IHvrbi1R6+c3JeS=wXJ+T;uWvt2PqB*)9Vw(WWDI1HW0*bSA9&s4vR{AI zITGENA-C&FH-65LHY;rnd4{d7$D^pRS>FqKqOtw1^)YZ_-aU>if8YsU$oOz5hGO+R zp13+Rq!knm7?>hH-s>@BOsmo^U4FO9QxprI4hKWhGH)mP+@StCbY<+s zq2PW~kYm;?K zWz{GcW^7lAgQ4FMVT*S>ip<$TmwRmX;YquePS$KlBQ%VA{yS#gysHvH>$2X!7%KKeOGm~^6yu#sWCGY52)r#p(a7P z3`mxtSf{&r*mUv%sZQe|`6<+>aUeqxjhF#F Ju@h5eZT><4Cr>>b(OXW$SH6VJ7t zGAKzdin-sw0FKh^)NGrSGuhn$;+HmX496AXmV3G4cu#zUI|^+})@s%C8g*j!{7huJ zR4U9C2rjxXZK|lRH!3T-UNTo~S~`ohvS}}ybxY=QO1m!1~It%hES$R!J}FRUCz+UklevC* zUJ725Msi0{V~~{_0r)Ao8f=IB*)T^e=O5-R9P=u&JwcB$q8tH-a&Mt>9}vI&7Hw~k zXbw}axEw`>Z6{)ElWZkK2l|jgmKGy`Kn^3Eo!ns=&30B-8C9_XNHnvP2rkDdI_t=9L>P5_Hz>T9S-tp zJi|dwQi0)!LXgVy&9B>*qKvNP#7h)8`39+xmjsFVV)XMp0-uE>dU-?pFv@E_fy0=> z5nM#SpZ?JxXqf&eNuBo7pP+bW_(gmoO)nu5cnOifYnWbV{iqS7LvrW1dVZVSmyn#F z@4t{sh5G-IXBw@Ho+i&@{0%X`Va7gz8LDuZEU%KC6hXkExXpDSUuHqGN6))i$ zc>RtmUqJfEK`yYDdQAkUG^p@`v!FbsromEcmSiH#rdg6=k;t)7$qPI$xitm;S4ls^ Nvm-i@+Bv?2w(oqUNbLXs literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/Code07_TwoQueueImplementStack.class b/out/production/algorithmbasic2020/class03/Code07_TwoQueueImplementStack.class new file mode 100644 index 0000000000000000000000000000000000000000..18e9440202a2e20f5f3f7c33b3a8f0914d54f7cf GIT binary patch literal 1942 zcmbVNO;8(U7=AtyvLP&m27)MUDYVe=V}qqoY!DC%C2az2L9kSof^N*Pu%G#6i&30uH3Vp^s>D&PusFV?_|8Vx=j zwa^d1=Qs1VOcRwU@K7M?7&0@VYdO=h=k1&{(qS)-2>5K7w@=1p(zJYNz)=l;9gS!b zXnepK0WGU6q%0Z@7Ogt+XwtNj;qFBZ%>o07l#$Q(4}>N&E3*H>?S+>!*9)>BBk62P zrlnF~BsNa(Eju$G0?PGA1?nB*f^DWkrJWYIT&SNISD52EPN0oK%=}b3Yi~M{SoWa> z$GzwfaL;A3c^^)rQ$v@IGYASCDaSEp*lUbp&ahT8Dn7yPOFs0VS3{qU$8lERXc-)_ zY?+iflHD;<1v$4W&>W0(SNL5*gq5;>9Z%pK6=Vx}avX?HF@21W5_(<%2L-w+Be;jC zFkV{njC}*=@{Ijd94NN1&VqSLu}Qfh&=jncRXVB2D6I$MI-bS^{gy8kj8y(1;+8#Q zzm^H6bzCkIWKt<*DWcGx=EXe#?yM|eT&O;@hqE%rq(^1osvxRhA z<`#^2iYxwTCSjx&jhw0GrA4>BW>WK+=%K8KX+CY3tkCA*t%_*wmnc233e3HT@NW`r z9{Lxyh6nX-QUdah2YBn zAs?ymey>nRN!#^LDGvkIIj+Zytdj^0%j_5PnL;ihr%jcuj(>f>&#D(mpmvr{#-vIz zqpU|POXen3e~_Hk9q0jQM~od%T~!dO2l770S%^=;XLZj#h>xA^YrLy%K*M$3^&$W_ zFwa>H7Vr#Lc(}?BH!;8;pFs21ZKM7^0yppBk?4K2@cCHG-#Y4V9df&dssq)>Kfo8g z+c@?v&h>5M8*scRcH4<^~yO_)S^F5;K1m<6ER#k$aK53i%Uzkiy?d( z4<5OAl6c?)_@Tr%+fBs8O?KwZZ|42^&HVcP^XB#zyLjfnfN4Xzuuu?KJW*d%J64lX z`~Bb~3{ru@ZZwI~j)2+PJaAA%$%fv+JOO1sjVl?xQMD`RmhH>6qfDnrF52Spli_1QvSHBz$*%ItY`GY7nzh z?M(v}AE+eK>%1t_aYUp*P9)CT5&>^BBBgf(Kyp3WK zjmC3W-cMEVxv$Q0PiKF6o&@2WC`gVw_nOpuDgCBAYG`EDWX-xpSzDM{$a+RCvzrQIRr!=ljJAw* xn(E-4xpZzz6Ex7w0&n3FkwHcsYeXh_RXiq=WEXi`O{zZ4oJ5I~bwUFhe*i_$Z5aRn literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/HashMapAndSortedMap$Node.class b/out/production/algorithmbasic2020/class03/HashMapAndSortedMap$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..deb3fdb4927b608f9bf9b1e42267e1aff1543b6a GIT binary patch literal 462 zcmah_O;5r=5Pee$rL_X$7s^GA2jE~$JW5Oq34x^I0mFSM8(C6Y(+~ca2V>&FAK;G? zXOW}P%gnreZ)fJs=hyqkYK1PE4h$45m@bMa5o!yu6kaHzNAG^RkU>T$bycLY8$zMg zp4ceEw&1wff=f6FLXoDISKdIR^E>f;8_mXXlF1p@=c9Ng3B{!dbIvp*n5|)Z!l}1r zs=kWkD1VyD%Gb=uU8lQ6!U|HY<4-Q(MC+-@*XEWA!yQRT0~aD~$TgYToI*fjZ4s ySTBqWR5?~q;ON3+wauu;=-@|<9n=}|KkTxC?~Xl22KHH@^C6DbEL-6E81^?E31Hm- literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/HashMapAndSortedMap$Zuo.class b/out/production/algorithmbasic2020/class03/HashMapAndSortedMap$Zuo.class new file mode 100644 index 0000000000000000000000000000000000000000..f97a14b75915791199eee113b93028144ab5ee14 GIT binary patch literal 459 zcmah_%TB^j5IsW+rL_X0Aj-m!xBwQ`#HGZ-M5wLAS~#JI9-Q0xO8Ob0Gzg*~yCP`a zo@b&A(|~1T2R7lv4@H`uUpQltE^oxsb+nkpNhTK@pWf#&p|}=dE(tUt=-o-rV>gT! zoT<7&B&Ye~Tqbv79&)Dc#=ZzWkpv2FlX|ucQbNc5hw73!)&y%7=ZP;zfm+!5<*YNM zkWik=G#kfhW}roA|FN84PohXBLnT%6DH;nyhaXV@z^v*O+o*_L#uY{*uBy7#e+Bj1 zFEE}N6;NecfyVX#IvOz1M2%7NryF~yGvYby^HwI~J~h|i4&@JV^j&2I93R8{0-si3 A8UO$Q literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class03/HashMapAndSortedMap.class b/out/production/algorithmbasic2020/class03/HashMapAndSortedMap.class new file mode 100644 index 0000000000000000000000000000000000000000..920539de6e4712ef7eb639944c29d4bcc01e9c22 GIT binary patch literal 3703 zcma)9U2q%K75?r@)~@BXttci$4S@tgY{zjNlMn~l4mgGo;h%tQ9AeUxwY;_!%aS9l zO>J5Tguf6%_zB@Bp#|C!TA(2*C>hK!nGVy3c82G+uMiKV4?Hk^YNqaYcUOw!XxwU~ zz2}^J{_c0qy?gcN|9tkv{5)E4!4Cx<6>Au}MlAtfODqwy zwh4G@YWr1a0!wVANh=m_*lDCkyNn4xRCqjM^>-Kj&{3|ULPsS6SykI#Bw?8&W=cSv zGUAiwu3>>?HIdrRD-m6d=28T)R7I7JYp|>!r{3wbWsWnI~I3 zGL7+OKb9k;;zv4G;5vb&w*NvM<}e{G;t2t7%|LCxhU+Ptd-kQd*UxN{i&>>(HEv{} z2^nZ>OEsXWzl59GGd8zhdIsMi@2;EP*EdrLo{xr(;GKs z!EH+n^(Ir6IYgk>3`{2dsKz>3uR581L}p(vpgGykGEpO~+#qr?pkX ze&#xN>hPt{j(z*i`*WWj`S#4Kmp(su>GTm5@d9Z2Ql@F|)-ibe7{e+J6S-n<)gU*g zlU9=kR@P;h-x$`&M~jA^3Y5;B`1l{^PJRFRn^HET;}QIfFb>C3Y0GZzs+yvEVL2X^ zt9fierQN+!+b_L6uHy;mP30bt&ZO)~9Z$)EYs2wmGUW=N(ebPl`lDtn&Q76N#d88H z7AXPIZ71FWm7TGK**!TvXr}s%!8j$s&Scbx_Zz90+a^FbbQU2J9g1Crbdwmnqf!(VDH!d1cb~%06$~01WD9fHJ zjO8{W^_CUlK0T4eK72JGEqU-}-xYZx7x8WMy0e(^B1N=uD(Rqt%qb|Ps@?Oh`jxoI5#wuRnF6m89rlRJKnC$iC?pr(m#j-)ZCV47# zvq`#4xiQ$WdL)rBQ|^{n;?kL~|93xkX7x5A$G%h&{50-#8iCL(7&ZD$5=)ZunF8kSi4olY8zX#QO z8eUHZ*Ve5MuFT+u-IUkWXK)imv#8$VJ&)S3H%FDYuEM^MFXRobcP+@2WNqwFVKt-% zH!xbTL8^q*5=l2Yv`^A@u#l=sdXpp9Bz>zx2W+J#hjBdJCK;v|QoU4k!r5#(h}$!0%hzy4Zqz$-{t677*$j3#u?ps95h0KrVJ)NuJ2U9s?Tq)iW1ln$_A_em z0p<`cbq2r8p)};rU=L9ZJSL~goI#gUWg$JU5LtxFXR%kpzb{-7st8wx%0m^wpV)Ym zhbkRP8kc8aWMIm`BhGSzF^;nsW2WQbK*&Loa3^+$0$I2v9kB6EIulv!?Fn1!fHNVn z4yGMCTf~G7O~5I`B-bPp3Akm*@eXoRSIUspa7Au5EQ9OsYJ-K6;KOc30~t(b@N+wE z1_!gGqkpK7eVVM?I$m(=hzhimUI7i)p#m#Wh3l~ftFWGXun9Mzja&z>n0;7_eY_fu zVI3^g;c;plMLpiY2Kyu3pC;{*o41hGrq$XTt<_q#BE{)?|JoT5lv_n5#G~! z&?W}3T@3PCwjXzk6e41p_pF2H5J!2ZI*x8}61&7lxKCuzBQBy>e2G5s748>*MZfqO z4~T#ALi7XniOYCM(O@W57*tjxs?=jh3By!&U|8wFsA3?d9Ke`z2yx{E63V+sDxV;w z{0Wxw6{eKG;bG+)Oe;U&5s!jL?IYwv=a|6Dc!k(#%D-_OuksM7Q2vDzc#UULmGV7a zC*?t#@<(FuCeiFrF5o1o67(r&aEcZ_#yEzzNU5TS$JH$T~St1ZGUOYZ^ZGiz|a3}V22>S=NMeUAMgoBAE|0yaX%#;wCTgh@QB~bw*}Ah F{{lf6oc#a* literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class04/Code01_MergeSort.class b/out/production/algorithmbasic2020/class04/Code01_MergeSort.class new file mode 100644 index 0000000000000000000000000000000000000000..f1e86561d1efadb80c84e83d8009a6cf22dfedee GIT binary patch literal 3376 zcmaJ@`)?dq75-*tW@mRZe#G|rk=;#ga1v*nt{oHH)~~v89^PWdB@PLVX|t2v!QOaZ z-5rNG1t~3VQyPL=HAqkil_p63B@zu%LzG$;KT!z@iT?poC`Cg28a0^j-dTHXVz9My z@7{aQIp6utckb*T{(XOSZ4E>CK?pvm1~d~o{0izX*ca`dtev0jnL2;LNx2IALz#TW z9Z{fm?LQqt06_yG6FXokXia79a=G_V&sZVt^d3An>6B)j=|YKSMzK^#Ips2ET{DS9 z!n3V4QHOd3dQO~F5RiLvvjL3;noNYztf01vW72l#7(AEB)2xe*5+O98)kGV15naj7 zrwciW?nn?(#0=~<@dVnpBs0BOb{%o5ut03#3F$sl=y{=($-C2T$+2^T4FJAk;;ZOX z(2}#~ov}hbWxHoG?i^=j*Ur1lCft?S@0m-MXq(B;4u-H7`wVoM*bhrV<2L?@z9^yz z7mqs-^z6j}6HkgVkUXBu=2aLUwg=Fw!2ImvYk&LoPamvYd9Zv<9PJZFEm4m{Ccch- z2Ay^CPRVwilai9>N+o-d1PRJ!$XNhSn|KBT3WBLZadBgNW_^3e#4uRrkgScU;z7YU z_hs2fO+2@CyH7YBGjRk*2{}_f`pSZx_3BNdvjH3@?gv-ze}3cVf4TqWKUZE8=MyHL zmu_T=5=8(L8wvjPllMOR#Rm#Bp(q7)6PdhoVj*|lDV?&7C zcP_))?3(yrdK_fw?NUjBZziFjX4dmq7Z>uQ{tp)lZrLr_#YxAVE2PVHeiTD^ z1tkMzA#`f7v)X8x{Kdk&)8i@H)BZ6#`=opR?yp)kKt9DF>p zO)FarPc0UmZH{kF-n)VZH}_k`#h9JVPG?+aFo27!jKXd=6M4#iOk7A#*#JTBc`Uc> zARBm9!S4Tmlx^hYhYm{E$BP08f!zT=pOgI7!%^X=Tfc>JhZ7%8@F}(d6;phg-T}OT zZ}MAEG#gih@wcGKy|DFr1g%y5CbT=2YOQMNdoYAERXS_nF@U!(G3?;8iO;IzFiv8c z`=|KP;0uWmyre53u5(RTcSfSWr1wZPlGZLKN32MUA*`5|jEXT5<4{wLxSP?y+g3*- zQwgIM&5YW@Yqpj0X_L_{&u=9DB#Q@U)6AvOr zQg;*o6QrV@{~b8aq$jZl=dceBy6`<%cpcri&hb57)1pWxy&N}ay0Jmi4ZJ96A_I~z zl`*d2EQ_fz(p#9}uFiOG;5(f88TATY;>?hACJOHi~|70aJNrDbgP_YBC$ogu;+e}X_sZ`dV4}3%$udka~UN8xhUEajt zT^!?tBV;4GtCk`YA`ozUVRI(_dU0ODH7P#P`5s&ozDKAPMSVzt2E_}%g7a;95*|9N zPoXOxS*t6d33WJX5oTR?)QVE_J_7q!cNLh|{(`$RO!`IEQ7HgpTAHnb8+DTme%}~Mh2^|Prqr_!&e~KMKaU6B^Hdo|K zyKSv@uYMqwDu|niw>uh_OA_`!wA=LI@fjyjkezx0XkbI`!gnd3Im#!)CY`4wvaDVX zPjfzk;zk<#D2(+qMv<1cDRI%mdKz^I1Pmn@_!5dz|Bz)1iXStTM3xv{FwjNV+8uQ$ zBB*Wo4I)+~exJPHF7_-br1*2L-9>j*`yS5=x9 zP!UloJd5i-1XUN19?EEmWa2d{ z=5?a^Ay<}&`weFECQ)A{{co|yf5d)#n=-h@Ui~ozf1QF~qR!r77rrYq9%sHCl({H` zPRsqW5aRwDlPrj)OR}sPjw;o7K{Df~Hbsm082gND5%0Cr1XbLVx`BD#lVos6)K8@p a#Jf6&JjVceEAX?x8{B)rU&3Yb-}WDr#*L2v literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class04/Code02_SmallSum.class b/out/production/algorithmbasic2020/class04/Code02_SmallSum.class new file mode 100644 index 0000000000000000000000000000000000000000..38a7a0568e708a1d50ce2e1955c572fb40c05808 GIT binary patch literal 3380 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 Z4&fXY*oH||j=wTV4(|6wTx0}o{{tYVlyLw6 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class05/Code01_CountOfRangeSum.class b/out/production/algorithmbasic2020/class05/Code01_CountOfRangeSum.class new file mode 100644 index 0000000000000000000000000000000000000000..efe6941c456d7c66de76c9e3126fc240bc71ea1f GIT binary patch literal 1643 zcmaJ?&u<$=6#mvb>-DbJPTFRYx^{jQXp=3;Cj8h!sj5nmDm6*dsHt*^1m4(7>)>Cq zV-j)2k&uu$O+lt#Qm^bXXyI0 z8eZdREY(_#LU^O3NM}zz+euX^jPfjFP>%qiBF^y?XC9?SX}I4(`-Vykr#UJ&jX1;6 zIn?_gIkV7@0b11NAGyw;oN<3b!rglSL*I4x9w!$jbXT9;S`@yJ!rgm_%!CyD6GhLJ zVsa~3Yzu9t^V@_zu_ubz-1jhd8Agv%pC?kN?%|u{+e-igNRdGr)0CHKQLx@%>T?*x zS!BqGAUMlXDlJEwA}~XLhLn2oI)*UJ3?sCrAuR1V(k4c=f4ElVQ6v?mpJ9>|Fqh4J zg`Au92Di39$0;gOY;AuDQ|v(KyV+c}C_c*jhMSefpcG`_N<-vxT|KYNT|JdQrgkn0 z-ACY(a0YOZ;BOG%ETy7!t(!W6$|>e>{*cHVUW$k)nDzg=(_3Vwoz5RJeq4k#_6gV*I*&Qdp0LT2 z%zuemf|x%ea>cQZPor!$@qa=l8TR}pJ|>?Gv5YWc3#kr4+3HptJ-~BhgphI{Jsq-1 lz2NMsK!?~*u*a0YLsTdD_?}LfWAYfL{sU3E3i1E| literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class05/Code02_PartitionAndQuickSort.class b/out/production/algorithmbasic2020/class05/Code02_PartitionAndQuickSort.class new file mode 100644 index 0000000000000000000000000000000000000000..79f38b3f87e2d6666f2c8ac926b0b9b3bef1ac15 GIT binary patch literal 4051 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 u9@5Y`Pi@s`5n`OsSWsjZ6Yv8qx_ zJ9FpUd(ZjqcfNCG{OPwhN5{s{h+hTafucbT!3&>2@j?BtUYpi4y|wN84;o2Jz}IMI zOsh#iiB)w4;YUD2FoYQh3DhRjdZDmlP3^{P%2=^_-;Mz@+1HuPTOCGnAYU*K8|yQv zU77s&lYm-yR?i7&vF?_Z7RTSL5Q?NTEtk(GjY1)a*(lL4Cxp2O3(T5?)TUbp2q>>- zQrUhR&|?zNyb!*FGJ&FuVI45?M4u{bPV2n_ekV+Ki-rj2ZBGN1nXc`$^kiQUjfMOs#eP-k260o3DR4UdHI zU97z)%biCHmLa*!4lvhY2b-C#-JUlyR;QIW^!|nt0F5E614S^eU+*(EW;03M+HG0~ zI4W3r#wu`ctYs=P?lm*L4M8+xy@m}TY{X*%b8I^9^-unCGMaQTg&Ws_)JQWnhw!-6 zCpE&A>5KyHQl%eH2m~#oU{&rndd-Yn*eVy=s@N7nJGL`quaPnGx@C0OvRR+c>m=7F zQ`X%g<8=oV<4FcOG%jwE?4__A_3jO!``+nQ(&^J7JcE5s zIu8x#%!!mdH|_O9r!Z~QMkeJ)lH`AR?n6He4!(HxgAxezO17z=WwDlN7`fj>!O04w z#9Pgbv2CD#zmeam?@!ZG(wa@`=`KBQ%4gT8S_e#~Y-Q^M>b`*x^?Y8y)7?Uqwer`& z*lAWRZ~fUk1A5I&$~Yo0)2^{LJ?F+0CRZP%1FN4h4j7V^_0$)gNnO`HC>GWr;fQVA zZ;)P(L0DdjG1(_D+o5Q()VZ?sULua>#>sg6KNmOtKTw()G-R3Oe*H+N`5bxhbJV4$ z2RKynhUACLQ9AOrigL1*?8;5;*Ubze#=7s%ZB>`OrMvUyhIxv9nPE_9r3Vc}9@ zi(9kVzJXlB{S-~H+_P~flRVAxsVq*@lwB7a^>n(^w2THn-lMz(+s!3`$}c}U^VNrM zioe}D$)aVse(}=fJ0~vRd2#Tok5B#m_Mi|5wPe_EHp(}nOuMH&r{R|ZOYWm#y3=VG z7I^5tFJ<>~sK5et8V|cO_&TQg;p5fhQ!Vd;cW?YU#5E2)ILNDR4E{pMDEL+hm|%7$8d-v550AB^-9L9!jmX)q|);)SR8pVz&$hJn_c`Z0z!z=vY7MstC_=IP=Yunu)j*kueEqnkJhs-BYnup3q$ zPK75ZN#@6x8{z^flV_@nL@!D2ksBzEMpA0eslKy4GGFlsuch1Kk>yIljvHUDCR8~! z1;Inm=p#W2Yw2$#)3OTlnXW2+ovg;1DJ0ZQkWe>~oH{o-^O@G8Or2sULV@rRD&M>g zRPjf;mSH}h%EoA8oQNYtOQA}*ihVC_t5Fh7HEN<>y@m2U*AZRoE%V+&#U7ydTrDf-b2mA&@E1I9 zD|87ywo~F^tXuejt7@#G47UQiUtZDLk^M!20x@qOb^d6x|_Aiq9cT({^z;%X)?t@;zp zkR`&qSGhuqJyNg4N2^EQlO`AOT;i>cCTx=p`)lY4mUIBvr6iDN9oyoqBp;}pTmzh=BVaf~AP{hA2){{^ znHa@pAV%2gHKj2ksh#&5tYOQ&i3U)5kDe5y_zrC&*fiM$9iC5-=a=d8H2FNkH^XUi z`3jcdtPQY~zNG-iyKl_pS+>R?6t9GImzfE0-x-Hm@eC39IiD`s(pa2YSDb26>s1CX zX&J#*MZOgyLs%K*E3ZxViW}ImR+G0~W!eqwDf7wOQ-cU7_3E(u%KVeu-ox#@N5blP z_)GQ=!&{QNiSNl1Zk;^UW+obVjTm01dfp(iH!1PADDk)X-`_dP_B@;YAcg!6+w8k| zlr_HrKWD#qoBiPur8~rv|H3|f2hXvXe8{BuxU1YwipGT1*^I~nO5-QwONziGXYw88 zBPLlcvS5>TxhQs#{S>c~Ysp+Aykm628vhwznu0H^iYNU0%60oex-lVrs(cln z5k`uomJJKGiHw6WID`Y&6H&B(T&V^fxqozb9`xIutSP@IJ2e%>H+|*y8bKHrE~V%+ zh4Kj0B~)rd7uK2iM7N!Akkvhj-z19vB>3m=r53@^GZC^pjjZ<{+cInl9*&T&1+MT~ zB2+s5O&W1mMTEoQ8x0gW;Z|K%hapY`$~1z0=*kPFn{EB2?4I5j!K%wBz6_$+#4@2c zth@y0%J*eh)q9jYfHioQiFLy6usj95CZ0e8Hh5bpfIre_!XC@`i^O-9<9L#@xBB)N zv*lM%dHV%sdFKV=&q-;XZ5{^OGTUv~*ueyLF~ynnpE68ih9f4xEYnls&9SFx=Q&DY W0gDMPVTCcz84F8TWwtfO4cOnx0>gFy literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class05/Code04_DoubleLinkedListQuickSort$Info.class b/out/production/algorithmbasic2020/class05/Code04_DoubleLinkedListQuickSort$Info.class new file mode 100644 index 0000000000000000000000000000000000000000..458bee2302d84e4890ce058f15bb49e59706ee2c GIT binary patch literal 1245 zcmcIjO-~b16g{tPD2O*xu#aK%J~ zeWBMJl*ZH~+;DKyB!rRN-g2;DZnX(sbZ}=(W2F|#6TWZ4@aBZ^6Ndli@|BK)CDT@z z=A3nV^scMJ1CL`@D7J#0H|ThwFZ}G#iu*pNG{MwGD-9X$o|pqM`!u1@P-rMr3)Q5B z{a_UK^mAXHu>3D2u8YDIa%~;OdqEW2*itB;SCI-%b2!xDj_6+Vvn+Y6jVF`rf~cCA z0$8LPQvj`!m7>QVdxn&_;ncN33fdr*Y>*N*NbMR_+~K>-Un2X>s(Iq3`yI+%NnpFH z2`;+x31-}qmEf{l$|Shz&Seu^cT0AHdAF2HaQhpxQdp*SQJ{@sVZ>S|n8JH@{=mih z$o2Wen9o?j7i{1w?lJP!xFhbPOvc`*@MX$)EUS;kwVmoeTtZ?nd$ i^2|0~jb4s98)PX~cwn%Ohr}XJa;W1Gdp{;VMgA`Up&>#5 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class05/Code04_DoubleLinkedListQuickSort$Node.class b/out/production/algorithmbasic2020/class05/Code04_DoubleLinkedListQuickSort$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..ad8774a80cced94caec406bcbe522674f8fe6867 GIT binary patch literal 544 zcmb7B%TB^T6g?NpqqPd+6VZiO(=0w*-xKFGP)By1EJ!Ep74hvQaWBHjpR|q z+&Hm*fEq?FSCo%?yAn zNc+h*!YbAlSXv^RhBD{ZIooBn=3C7-P_y=m!V5fgc5Pjn~wPPF_Lizq^OIqr*1-E>NL!wG32sM%wgn}ydRBarqxOHu0uluXG zAR&-ApdL8!qbRdZ4pn*pA9mi(?#$cSx3j_Z5xia7YLiJQcIV1HgT*bVBhK*}z61Gbb^^%iM1jA<#DboqZE0y0V8Q$(2 zSRgDE;^Z=n_`d3BA(ND#tIHGS`P#uCKN$t-2f->3nqK0IXiub}@~4Zs{1|40=jBRJ z=XD5LvQ2Qyr50(=2y2cv`?#IUEA2j^HVhAAA#)||{^gL#%8U%%l11%sS=KPgQ$Khc zDzR4o)k05I^#pSeWO6sjq=6NJ^S|#-u={Zwq&?NJ0Y88~=}1$7QWwkIks1is0aO_I zKd`;Qp36v#)%EY7FFet3ldakY&TxyZJqf^V++mMYQ?pgcyXu26S{q+sZ1Na?X73`y zuYzG|5;bMuc-+Okg4M!(o@tHO%=%!;`ii3!Ykhs=4CW?}Z>Y}_Uo5RYCD!q}ADwpJvjG4^D$s~%^ z)>f*vSf6MGt5~Y04_i?oqy!&*2(7lYwYEO1Z3WTRw#%-rcGW8Bx9^=KU|enTgJ$L4 z^SJw*v(LA`z0W@L%<%(H^!H;C-ti*?E*+WyH#`d2mzrH>dCZJAm!G%kQmZkg;8_%n zM^lvwu9DJqK6v5N;Wsb_hC;Y8W_EPUUQk|@XtHL{zhqgWb5qQ!iN;&4rkZF+>io`V zV{3gPnVMEd0R=5?UBM~KYeqG$!jCMB)sbx=2e}F*BOR@vwJOHMa112YwT?Pf9+O+^!Ng_}>c z-Xk|ob$oMzhABl*N60|g=y)!p6*6KiGQ%tb<(|c0cN!HP#!r01fn-4n|LfKzb2dBM~%{ zW-5`a5Pz(}1_PhMMO3KSqHKN%W6>~`MD7v;8)3?%(JL8^8PKc! zvw>#NmnSrRB%ZHH)Tffsc(X#)XjyckO3ow<>zATcN6bK*zQ^Lc4!G}dG#{fNVr3m|Er1Kj`kHnWvr#v9Gl`e>?!wT_e-PtoT-g3O>Aada8D z99J-UneFXXoLGcUv}#&#_!iPCRCsYEz4WSL(d8-wSK~7Z-qavi<4T4PWr(>3pVRSq z1J`2f$-Cduk+LL$COXBOjxD2!@>PUBMO`ejjVoTKV7#?&+uIM{arEFdN4vNAaRa`n z<4Xp%;l=?5pFGMw4>?DS5%(n84s6i2{!IpM#w`kyo2|G-npvyui2l*DU145H^=M8# z+uMa+w;8w{+o?ihED^Vc&%1H-+#2!0IjF>)2EHOn_%0jBQAD*J;&$7mcDI4A;vNQ2 zn}Yv`ll4L`b}9IeUVq@7?K_SfxNeFUUmG;>vA)~ix`&@NNwgHkGR3m$I@>l`$u%Z3 zE`{8hM57s7XC|Z4PIqdlmMCc-9C3)P;Neoor;!gQ&8$zEjjgq2dwM=q!+v_|80Up8KnvZB^!nb@em<+0u`sXORnIS zb4S`zvaOlPW>P8dV}^5MoWPs1I#O$*ZB+F+a-u%bnQXL{M}?cy|JUtcmV|cFs*Y3C zTEc2BmAy2PNOh!=W_zubYDqM8jP>9pKVHTwI$o7f|C++Ip)(;G?@F{<<<7pH=)c@- zaH zWig7sPKzq$(MENg!L~}SQx-R`Io{+Q%JVfRv-HXbNdR;lC9=cz|8d*Wag5RYzl-wd zb1=XZ2EPm*r+^={KRkTzW~-c~V(AXYJWXmT3mOV1K z8!l)pX9f?$t@gMU1#4AZ*&$?aRjRD6Y%lcM?*6|8!-c)b+>5+D6m{9t2dM=xfrA5F zs*u^rB=!_>smaLZ6(kSE$fwRlykv+9L1!7cPqF2tL^tM92^sSZ_GR!X#5ehN;ail* zg3EK9D(Ud@KbuPPis>kwv66Ffbv4~lIv9EonSB`75De|dggw0|oOFHbO_jljR8jr)jb+(j$Pw*g^j>)_P(` zV}jdDiKlTfo@WyKB1{~?CcFnrxv^OVn6QfZH#-Kyw{7#&ba;q0GL$tTLI#SI7vEvc zg<_8UF28DAWhWlS9+G_*uEQgElzKmgB%ep2Q>xgelb5U5H!zY!s8fb4Pu7R<3wN@| zTDP5AoTJ;;ou0I}CrYHdxn3Da)UtQ(NKA2YV9& z_mCa;k{!Fqj{C5j(PAYXe-*8{mQiFQt=34#ZK2Dy67|by&&z4Qt7*AwX{j4%p>4F& zt=PvEdN|vD&T@bw588ZacW@ry1AF({e8`{-Z}!w#Bd^L?b5ZYoazAH}pR@8>PCjIk z7rc>^57}IqmvKtvQ5W94Y10C(!%H`98=%hnSo7P=2*caYt}(Rx;D0*8qzhpL%CZV` zGPB$q&YaVshN`3@9>SS$Voo1w8up{EhJ45g1$%JbdSL~P@?NM9_58H92kSzv9$feo zytQQ#FUsn)g<8HA>cPdkQ5wqEoR1MVBZeIYgeU>G&??}rBa^!OUnmo6YIeXqm*Ee1 zmaU&sk)Ja_KF6M4Fa-aSe()=V@B-%J*F@zvwA_n02QOhYPvr~n3VricG~qS+;)}e} zy>45elC!L)|4Z<7qmo$n*cfw*w3P(uEc$XUzDEG&b4Cf=87$}1LSmIZN{9zLQU_TR z-y09N=L6_EYI2Ut&ryQ2dLOfhCGRe2Eb|DmVA(KnryM#HA16ev%A$$8F|n+u58eib z@Ir?0{n%8$)kPeRmAU5Dg(I4_(4Ft57-Mf)zI!f_k|Ll9x~xRBt!_%c5gzh^2=xQr zBx*;vZ-WF6;!zW-wTVXFO%YT49l$f9uW z7U^Jm69_Z484_V*3iF(I!aex(5NLB{ZI#J9FbkR*%OCNwk*#ttS>^JK%0r3DN4Y8> zXydU&O+dApI0zWEO2d@F-*#p%keVR2%b(Z1~4iirCnH*@xVK{i{h!=VS1ntN8 ziL*^r#Z5BXL357!`yxJzb7p2&K8nxgexV1~^N`BdigsgJ+GWH+CiUXWOg=olxK;9v zUfdx`LND%$_~eY}#m=3`k_qnR1l{o2q2{1;+{X^dAf0?+DPt?tY214;op=iOe>%pg zsXVEtVFu6bS!xE!G82nb393{nf1V3stqS1+%3Q2w@$@gZ@sP8B1|#@JdWoAf3zFXw zxfjq2pJh#F{GP<9CXu^}5$R{F`ADsEY+n-#H#6Qn$5P{&x~1uCpbao;`Gke=nB7ojjQ83SRyQC!KqOp!+%o= z6?+q5VWc8?l%7qbek~>;ds?G75aC#8W$oNqG4EAEXpjC=XP?1BPkV%$*Hkn++#_rj zTbNC>*g@{;_=NhgnnuE;nk#!zK>n3V;xUW F{{@IDx?cbQ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class06/Code01_Comparator$IdAscendingComparator.class b/out/production/algorithmbasic2020/class06/Code01_Comparator$IdAscendingComparator.class new file mode 100644 index 0000000000000000000000000000000000000000..5ac4f41697c5a0b426f83246694d7cf41bb237f6 GIT binary patch literal 986 zcma)5O>fgc5PjpMb!;4(mbOqn8`9FGjc~&O4v8vNkx(s#atP`bIrb`S<=V&}{3$p%QP1VEB?99%*oi{uC`_GS`=jZ65X+lFuN7=#x774Xe_mgV}ZaB8z zj!uP_5*B+hl<5JX)NGv?sKC%+TDS#^Q1=2iN%mjb{m2*lo%j9d?4ujIX%ue_)65qk z=WEg@kYnODmUPrCEMtXW&(C!H!^9JzFT?SFJc91!;DX>Z2lKOwd%HIXX*oJp39C8h zER_M%xTv2{R-6b+0~w0r>}(|BckU=)&&nY3+~CBGrLqfWIsG6LLg$)mujJL`21Ol0 zfLr{xfgp&W;9n#El8o7s?wXNq|528A4O)#fnDVo$u5swL|) z@BdttNT?i(Bt43fRL2%!WA3vNEGG;_+*k7?xRLt5`B}TNZ>aM;X&~GIP-4yF%W{n^ zn>Dds*!>Rr!W#|iEY&fvjk_$ZNdWF)gDp}c$x&CCDH)@6itj<7k2 zDiAmx_wgV{HSv&lTJ4Zg9~G#tI9j1rclUmw(&qII)oI|%rBw^yG9KsGKfz|M>v)>$ V1``1nt?_?s;28|=Mgu!A{sIVT=#~Hg literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class06/Code01_Comparator$IdDescendingComparator.class b/out/production/algorithmbasic2020/class06/Code01_Comparator$IdDescendingComparator.class new file mode 100644 index 0000000000000000000000000000000000000000..09e48e7580eaa0084558df6efc5c2264ec031311 GIT binary patch literal 989 zcma)5OK;Oa5dOwV>)1Fngc2yvh7_8#6-g=qheVZ75UQoL9D;g9j=c(7xi<2HU&RFp zfy4oE=0{Ox9T%#kse0J?cE&T`Ja+v1&ySy{r|6?;LPJ4E(ZUjz36*2#lhgK{VA6g& zJ{E35SnkU}CVPZJvvp*k1Ve{u;TkML-SwR~?!0IZLQizM?+4+@M<;TUFxnU;sV4%C z*Q7@v+r)LO=%`q@fhwW1IMViBi`W%`Cxgj0Ys+rX0 zHsF~mkx)7mak3xAiH;4z+QN4uSauMIXrMMq@Fewr8&tb^aH#W2X&~GLP+;T@W_gRX zHX|`EZG8uQ;fsbEOZ6G(;xVP{~V~x~SvQ)wQ>X%?NcfLa3=Hq>4?L5QtjA4E1 zl{2tE?&4m?YT`cMw8|@HeUP)hWN*b<-rD|!(hi?*D9;j~FRh#t7x6Gl{|M_D*6}#Q U2A(ihxv&x%cnX83(ZD8*zfJDx@&Et; literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class06/Code01_Comparator$IdInAgeDe.class b/out/production/algorithmbasic2020/class06/Code01_Comparator$IdInAgeDe.class new file mode 100644 index 0000000000000000000000000000000000000000..b090e4b0078fae12c9b564ca56687af5f9cf4da5 GIT binary patch literal 1016 zcma)5O>fgc5PfSWbsQWLLQ5%Mt!Ya>MOqGUNK{b;p;}7IA*ffhu~)&twJU${cQ|t4 zf`mZgfH?D`D6@_ep+>2C*qzz&ym|X($AA9*{B?1G9@<4HP&MQX_J7!qvxxO18FsSv$sg4444MhVtU@(}r$D?TPd8Z#ZVsHOlKR7$*A&-M_XBa1r z@CmQD4g<3!@}_~ZgsFTiinxWUhT8^KvBt2yyprWu{^3}>5)7K15|C%r2g?x|clR18 z4NJp1!)mHKiCvGR%rr3Mq%MZ?!1cvRayAm-TR!qAQXK>~_fC1}%5xUX#qZsSVfPB! zxt1<9CfFz4S0vA5$kb;HrD4qN56ApGqpQ^imtU*97-?7x`p_NwJWfKo`SD`PG;&FN z?;007AQi=7kc75)?aH>?S(t;T@`?X2n*^UWV%U&&FhLA(468uxp&8`A{b#{)Xi(_@Wx37*J* zfvnm32CYr&6UsB!`3!?XB|4X!FO;PISNLUGcxwvI3R4+8#G{nV#3p$Pwg{JpvVO!W zhs0}Uye|kSc}vaKZxq_JzM~>JmR-J-apdqg&DzFJYIpG@wKX)zRtaA~4Nd6OuNqp= F{{e;G=9vHh literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class06/Code01_Comparator$IdShengAgeJiangOrder.class b/out/production/algorithmbasic2020/class06/Code01_Comparator$IdShengAgeJiangOrder.class new file mode 100644 index 0000000000000000000000000000000000000000..6bb2174a8122a037a87ea2632de0ec153e8a7324 GIT binary patch literal 1049 zcma)5&u6ZVQ%cjrn|U)k-+VLkW`FQ$9W>I=5YrJikiZHdHxeI2b1d9p z^LQ|lRzO(kIIa`y5n`3Il&ExWR37a?I<{hcfmxN3|5Z2kDxQLj`mEP4iY%hAMCLz^#hOP*v zJ~wf=7&7x*nM3Cmh3#<{>ApAhE&0Y#6MC?)9XqN-Lh?vXf&*_7=%^6Zm%bvwFkM&r zUA1kJ=c@nPuEKR=M2VM612Y4NvF6=o`H-z9YhsND^dk60SB0Jfg6 z#S4K|mI^#lKMU(p{VVhapO47Sul6Sx?8>m6u|IQA?7zgtFmZ7PjuLYkJjJt+tb`4| zX(%!-0d4Joa{J6%ig;f$Q1NDJ^V=tcwS}Hk@^c3`SZpA literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class06/Code01_Comparator$MyComp.class b/out/production/algorithmbasic2020/class06/Code01_Comparator$MyComp.class new file mode 100644 index 0000000000000000000000000000000000000000..09350604348c3ccec1100c356d65f31da012ab5f GIT binary patch literal 851 zcmah{OK;Oa5dOwVF2gI2lMVWPsFl`Zso!OcF=G%Gw`1$qQ#RYm;b6}xlqwHb|6++`!oQX~#!g1&I z=vexiQ0b{q={-Vey*+eLMa_oeVj3=C?ho7xwH(WsP*tHGiXfF)gy&!evo;zo=FlXx z{6Hkh_OnhuI+EKv@B7iosfdM+;?-9ljX|*e%*XNV^}&@7y4Seco{f3Jdn;O)0oqGULgD{=u&090xs`ox65)ak_*AJk?n)iq0O}09$iS^XR7tm+E zSXf|bo`JWx#nPPsa2tzk@gkwg(gg3Dg=Fn)ox|SbbM%R=BE!3kp*2C}42;Je+|5`W z+~b?oc)_gqbJkr(8`k>9=66)L_?)ADnYfr*Jtr>XLH7Mav@*SfO5o?F(XRw0D GsQm&8r@A@- literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class06/Code01_Comparator$Student.class b/out/production/algorithmbasic2020/class06/Code01_Comparator$Student.class new file mode 100644 index 0000000000000000000000000000000000000000..09f3af0dc1e1853064adddb0320f340aeb690f2c GIT binary patch literal 583 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 Iz-tu$0@ky)>;M1& literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class06/Code02_Heap$MyMaxHeap.class b/out/production/algorithmbasic2020/class06/Code02_Heap$MyMaxHeap.class new file mode 100644 index 0000000000000000000000000000000000000000..f4ff2b58ffa716d68a966c526b25e0ef0e857937 GIT binary patch literal 1750 zcmaJ?T~ixn6n-|ln+<7F2y_cJiF~wb*w}zjQx#}w5r!y~+Bi6+BeH}A7MD#XA4t9O zcX-utoZ&_f2}*7e=y9R+G`e7y%T^caXIa0v+o*@|a38k5C| zh3bwoIrYi1W7lr1K3%nsWv4*f50=Q2k_28(pcj1#bk99>iL3UP(U)g4u$89Vg)|$*i(Ki$% z%T2rT>8f1|fue3>iM*M=)@tli(IeYyF{@guvU0|h__lrKQtf)3e%Ie|j*08p^*yIS z-kRs^N()^64tT72$iR5H+NxKaC07{qUFc~+BxQ>pFm}1xXd0MTFz_!d*qD;<(t#PUBAo&*N992*BDqTUgi5Wer?b$=dW7Np;+mk;-@gI^eK{- zdWzI{L0nG!i~*9+aGAJ**as6Sj0e5|0T%N7lC$C`XS|M^VV?WJHxaDwk@^ybb^=ZP zhKE%Me3Wi*zyvN4?2{o}ffgN+OY?#^(ZO3{)e@2tJpPi;{sVL90%q!;n7sk!WJilH zScWi}?qVi?#FfYWSD$0(7a9$5q}Qxq`V?&9`*sAgm_HrWR(~t0if*osA&vaA>3H4A;{lXC#obpM3&R z41T4VI>(gVPFZ0A2Cm~)P(Va3ZJ76na;uCU%V!GtjJBhDg|9JaJ@X9F6AW4OWmvnZ&xMdD z=ihegFR)#}JoUOq4hx*JcX1bse3r0`5+33`l<_`q%L+cmYQXIdE4<0)HhIY1*zB;} z?6BMnS&CO~pUMm$QKLTc6XpXjUcgXB?bunr>{ONNRFz_fM0>*GouDe6U6~20Qu+T%rf3d# Rg7q#H0pjdSjEdYx&tHX_1pNR2 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class06/Code02_Heap$RightMaxHeap.class b/out/production/algorithmbasic2020/class06/Code02_Heap$RightMaxHeap.class new file mode 100644 index 0000000000000000000000000000000000000000..63abbf71ec4ae7a7437fe5bbce049a01cf2fa29b GIT binary patch literal 1184 zcmah{T~8BH5IuKy+bv})v`|D^wIbSf)fO@Fg<=Qtwz`>?xtR}EGvv*ToL@o7~+{yw{+cexLuvjZV+^)=sUraVW7lq zbEQ?^F`dW8jzyVRsZlYk4a4Cg?j#kj#$AT-(*LHMW>C4iP;YvNzD#9?$hv1#_Lq%j z2P??kMdC_Knk~0R3LF?#iyF(#h7c)}Es`3XAyhZoMSIt53*~I;9$s&>oQk=~1iyWDkd3*{z8@HD%!T`%!^%_1gZ6I2sdai5&)SjEtO6&u_W@6SPS_8 zh%XXklN6OHFW!&nr(k;GbNB?Ro;X27mroFV@7G-w_f!Ksg@R{<`<#%r5XUyI`FB17 zt|LW}cq=-R0>oy#(`U|)LAW0feFarHh9bYC$1((bkgkD>52yL(NC)mFPdD79~-EM_=UiKQOC3n9)Bm2Yk$17g{t$Bf?B~F(aQaycrug#pqW`s`@5%D=XV1 zO=4AubIv|SvH<%ej76f@xQ#}SFzE|n(sUz)5i`kPaXO}vAuBdzX5P)DwqBRk0x!A+%6Gl zL&qUzapV)#X#j<2W{I9qV6H=1q8GYPS;r{u__u<5KjfcK7#saTlF7JBDGB$G^L-xo N$%kpI5b~Hp-){wv$A?6%#K#W=~H^Pm6z{r`W? z-umap%}fR%yda_o4gpRHF1Q&=N9E&kizX*VTKa}Ym8iww4yg&%>R@mL8u|rz7?#^g zDNEH__L{10s@C|vl#)^ehzzTvnw(5-2)1-P%fbYl?-Kz$%PY^GNPCa!f{zkDSgKnssiDLtRp-9 zoJKp3R3%|KstJKSJj~$F#mht4-f+;16<8@?m4sT{x1xxT0%Y6FgOiG8DppnX%3WZ-zH)cHVb%I!XpSWEL$vNk8H)L!={`V z);YpJ!wvzDGSn7sVvl@+w^Kwb+IaKY2`p8eree!I8oys1iCGI~A+&MZMv*43(Sz*_ zu0GvJ*7K_D;3e647i6lgni#Psp%q;cc5}#XHMuLLY1~N{ceh7Ex1EZSO2#;M59jtt z*o%FH$MZfnlKC2PZ*jnRBW7{S8C`9?=X>@YtF3t?!#oT%Uwd7zTx1+w1~X^1YXv@4tkud7qOAk!2+!=imJgAJzG`3;9flY%;TN!bR(H?(a#;k+;(c z-p(6nruAi%;1yKkRhot~XvAySjMuRRZ=efr(xdYh>AsC9&LWO;IF9o;g$p>1izIoE zPVeI#e1J>1f{!qXYxodzMBT#2_z_p}3qHYb_!NKQb7b%Z6EMX}@D;1ZHCBh~Y(3I! zBc@pgW>^@rEP}7uVSK})xXDH_$Kv>woy2$SMO-7Fj42EePo!*qqReF)**UTqhC+WRw{R23Fai(dcO5a3dT|-QLnX?^#}=a)qq>w( zJdH3j!k9sVq(y}E4s@a%g!eBPL^<&+>GI2v)i;Ss5~ml^9h?#%RAf*Lw*ZT1Mjy!8 zX80BvRFYN!Aud^2SzoudGQ%(8q8#{}7!IV!YZ2A|IodsR_R{;`iW78NVV?#tPP|sS M(I;)$0G@~UUw45kGynhq literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class06/Code03_HeapSort.class b/out/production/algorithmbasic2020/class06/Code03_HeapSort.class new file mode 100644 index 0000000000000000000000000000000000000000..689357c8cdc35eb25b3cf45cbb2a1708908f24ba GIT binary patch literal 3780 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class07/Code01_CoverMax$EndComparator.class b/out/production/algorithmbasic2020/class07/Code01_CoverMax$EndComparator.class new file mode 100644 index 0000000000000000000000000000000000000000..1c8d8e37e8948dafa0db345e41b49979c6c744c3 GIT binary patch literal 927 zcmaJL^>#kTIa!7{fRre=TlB)f4_@^{jg> zotQ9QcYQZLBxK5!3lmwG1}qyBunF^yC!%QgpxOv}a(C}bBe<2}sra_mc74ei((e(d zWnmIi2J$whQ6Q|RWqtB{jo{|12t^!(1j9)T20ALY({fa$+Uu{CmVqLnnDo|ECo^_*ry4_7vKIBfJX{y2>6p_4vw-2%D)DpY>29Xu%#~F*Q7)ucG!D zwA>yYf9<8G(ju7W?xio{e#kVNFGB{NkxuKcb2wzK)_Kqm9eLua_KPEb`cZKsWIHm7 zn?V#CSR>4&d<(&D`MwMrYCj|oOdo7S?%8;-!i%AS@CHDJHSZwHw`^5e6YH_9-=H6S z(eRF?dIoBkVQCKnFpKwWk=iYmD!Hkanzgn46UGjo-gma1A{-?M%Y&#P0>@(x9}-jx z^L*3t$Beo#L_OeWg__&i{)g-ipI^w00zaje8v^TCOv*1|IngUvO>_zCtP4ymixM_q K@-#}=g!u>xCC=dh literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class07/Code01_CoverMax$Line.class b/out/production/algorithmbasic2020/class07/Code01_CoverMax$Line.class new file mode 100644 index 0000000000000000000000000000000000000000..b86edc6b41f14824978da3696c2cd94b628242e3 GIT binary patch literal 494 zcmaJ-O;5r=5PbuM(pmu#MFmk455Ph2pqNO!kQkdF9yBDL%u+U5Qro00#J}Z%n0W99 z_@l&GH_I(+4m14>Cn%Wo#EGz-=BXtsvSj*D0 zNaQ(RfEwt9Ln5jwQk6(49D-19Xk#oeGB#RoP=8b} zm8w?iq3XFms&v+gRAgihJF_!8^XAR${Q3Ly*Ub&OXgV-Zuwc3bMVRXbQK0q-g=Xv6MhUhB$HfDM0hM@pzWE{ROdlLXysPSbkQLg@h)LGHz936 zN4@3QG>6$w=-l{>Cu+LnbQ9O~J{~^!=sAqomjpjxu z9r%gr$BDAAPFT$O7=k;9B476OmiRm}bGjFm%z&`U>tTSf0HDB{cah~Iw%V+Tb#e0t z=qq0gJZ7n%fg>!kbf*D$f~Rbe-Y}Lrxv!U-wX^jN);6EhFKpdL_>>~7OrvH99FJ#s zo}xNf;+s)@&!{hEsCyi(QOlcKzfs!e^Bv_Z@NH`48L)}vwERn~qlza) Op@G-1c^VCD!2SnZ_R|mm literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class07/Code01_CoverMax.class b/out/production/algorithmbasic2020/class07/Code01_CoverMax.class new file mode 100644 index 0000000000000000000000000000000000000000..3e34443ffa8ca67449b9cc1ecd442c2b86849f47 GIT binary patch literal 3887 zcmai1ZE#dq8Gg>*yZ7#HZaxTXU`axN2AZ!X5a?18NP+N`kWGLfNTW74ySK?Do4w2K z4U)FDK%>#N){j<;wf2Lmpsh+jgba+xjHBZ?>TmpIXFB6Q$6wA^9Ei`kcOi)oW!QV( zbIyC-^S;mfyzjmF!|f~AW@fMjzlDBmcF55R?-#Fw%8fl z?GRAv>JRG(2`rjb>dLs*u$5Duotc?YP63F(K(USz1EnYvD4A7FnC=LTjM*81U|m;N zeV5cNH?UYLDr4qJ?a_~Ef&X+Y6{t$4&3t~{rj|}8WvyHPc&Bs1$|cN`wLNymil729 z>GSe}F?v=d@Zdsc`du^Ub~rJlOCxj$z+Ioq8$Fm8?0?OJ(nE$R%^qd`Eo z^Sj2f?u3W#V{)g-z(Z)}-C4^T6#|rdXMjwAf+bQEa16C#1Q)Cj=_$y5`9N(n^k?sc->3um{1JOO zGOzmuVg;l3VjRXn^y@fe;4?UUCvzTY`zP|QC5<}c3_R+4Wjig*LdNZPbCx;QUQUL6 z*1%Cb#zc*oqgJPrNt*5v+Z~}q%rY)>&)DY$&%<_Rn6ZBjpV#pP1CL`+V6m6z`4EabUGN-$@# z@&rodJ-y>&LsssPIh5u~d5@Dc(}&HRE$4+r)g7_vO{`}D$JM3z_s<0qv?ImPv!LIW;-2?5I*P-{pzy9k-hoI<#dD zrSCAmqg}@tdT#Q^6pCK{diXoYxXg^~7-OdFZx!=8#@)ONtoXm7&i^Q zEHTo4?)!;_Fb^gj?-S8`P`F=kIzA-L{DUWPbI;tD4okMkHLv^dt zJdL6)Rg_dpi?&WG;{41fN=N0?5-dq>R+p(&Q)gdCrxMqcxE|Hz!L6usoYsC zC#syh`UbQ~O-$;v@R#bSMspp@)KVHbKXbMEJ>IW)KJP#orZMH};pmvkv~r z^?&2EP*@SN8^6a+^)hdN3g0A^Z;;@!{}l5~1-`{hm+)jMzD=nVzvG_=vUeFWlRWhb z&lllSe1~WG$%=pAyOaWq;}g6}NntcMaF&wFnEr_GQ3^7$>v)Zl#`rFJ^{CVHgvYuN z{qOcz7iJW@Jk~`R%XWO9_ZHo)R{!MdWbP^Y(2d{>L1DfAKu5(r|7(Hz88&17d3pbR z_E15VH?wup(>G`_fH(0L#}H$v#M{K;9d9P^Lq_^jq6YRTmFpIMMy6MC{5i+BIsSs< KMSOsd5c?0VO?43f literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss$CandidateComparator.class b/out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss$CandidateComparator.class new file mode 100644 index 0000000000000000000000000000000000000000..dd02a14fa5c9b27cfd90efe2d83ee5288711cd11 GIT binary patch literal 1122 zcmb7DO>fgc5Pj<;brNh6(w0J@kU$}yBBes~kf;(wphil|AyA1E+BmD$!LcKIUDRL0 zkqZ|j1QG|tnIA=&b&QG{RcR02x3iu%Z)SG(_n#j>PfpNABMS`)9Z3TzEHLCp{D?Ol z?jAH>4MxI}3=3`BwdFQLqEg+@AdQTUtbr>q7^;@TgJ5H;+3|*AWAojMBjF$SrI_>& zy${d5AXx8&f%L}0C;A{fW?)?v;;Mn1;%9^_h5y`-O535*PxX_k4-C1U?TWo{JfPb6 zz@d{u&$GC*&wX3j@nKRP+5yAU3&_tF+hWkX#|-rgu>aMmD4PssUvlgHE}z7Clq*7Guvd8Xe>1_TnCUKq(?&Q4YHbqj4)OE4)%pM z8gA06euLasX*H$}xP{wf(a>O-Rz)7ES4UW?e}&$l?;~;wlsWtagU}?~9DXLJ#D9TT zqrk-}ISx!=u!cL4SP6G&r=du^6ttBcmVZXNrC4{1h)UP2)qf$~pzj;xbOq~ zDD@8F(r6~rd(X*zoH>2}czyf)L<4&nC{R<-49sDkkRRA%yYAb;ef`E62sa_jH@v`0 z&I#&4t*avqJ%x;c1sH^y>)UaBd|GdYJ#l<;cR3c(QzsD*oqqUu5ytU;a}+1xP(%d9 z>k-J36S4+!vR!pXPZAdlEJ>`3AQ926Hx#_~z_P4bm!Qengj~xDM0+%JxWIONW|mr^ zYx`Y0@+6*-TGIDo!eQ&*%FbBTn6JY(BxE|_D00P>Cs&kzd)JZliI8rKIJpkvB!w!W z`qxf^VFiJRn$k7FGSffyV25o`0H`2oEoc1XS!8dfnD`$pGhbxnbG62?Xug2V%?VQG z)&z^DIzj%Kc?B!{EpZ2Uj)pvR6p&?~m-&>KHNX3@iZw<&3G2Lvrr8E(QcV$?oT+@a V7%3=Ydm1aO7szmR8Wrq9{{kzUcT@lX literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss$DaddyComparator.class b/out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss$DaddyComparator.class new file mode 100644 index 0000000000000000000000000000000000000000..c2a2e61e81c8e6e149dd07d435d25bb95d14933e GIT binary patch literal 1110 zcmb7DOK;Oa5dJogItdO5p{2Z9lD3eiNXVs!M3o?b8YwM@K&770#$L4!jvd+SqWl_; zT(}@1kT@XD{3yz-lK@IpMLl?CXFT70Gqbb5et-XQevUS3DMS#}5YrLI3PX0t&v@PD z&Pn~%U?>d9u+p|1OYSj5OXZ^^5=d%D>9_`+p={XP_Zz$Qj%$iW^X-c>;Z6EdjQgkV z`)982?{orRx+CEcd=N|+SXZUEt|O!HN#RK0y|zXog&W9exT#|mYYdI0iJx=RoOImL zn0s8hlwUJKLoghddQ0K+x>{EVEq67nGpvR)3Z!LI+yD4uY6c9Mp5=(cU^Jk<_`oJl zuIC!uKH{FG?3ptrPc5IJxtxBX(H29*eZo*(j{MuBf;1V@eaVe?2YfuMp;+oIUU%!F zr`)A`>RTrcmw`v^ytx=M^(;)JeT4$|sH;@p4Ln1q`wK zhWxVYX3)EiBfO4US3z@6%x6OvwlH86XcZ%1xCJ0enjQwp+ho;AGt%+OH?Yrih~N%M z^&5DAyCn5#0Pf*FS+p!zBdNec_0mWes$Zbh==*@o{AhlJPUkea)8;1%ivE{)J4~FP zf@g^-4K}bDk`;)0lal8N7e{1$pJksCZ(+u}OF+e&u2g>_QKRoGvWnxf;?pyZ7`DQw cZR~{lAs&Ugh%)IM;S(sLf+WqWh$@nQ0Qoo#@Bjb+ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss$Data.class b/out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss$Data.class new file mode 100644 index 0000000000000000000000000000000000000000..ef43a32c0601b040d4e8eca2d9fdf593ee8b11af GIT binary patch literal 535 zcma)3O)mpc6g_v0PG^j^>YJ8Ih_*z<#)4QVqDfPWN)zouUh9Qv#!NFah@WL45(_`T zZ}IUDa9`O9i+ArmC-0tn-+9j;k58YU*hbERh5-Y*jX}f+sjj#dC0BUorK5INb|OM- z+wq)ehcJ*YG)%-{8nA2(!6qzqToH!ro29aUCf7Gk_pfDeTaRR~e&OHj`eC@ZCnCYE zA_xdttD^c7Hj+p&^m~eH5{!JS(rOkO1YHRcl2yl(wX4gv430(HWhPzqJHl;z z)T0Y0BrI3|wZ;~Kco*^sR^7h}I`Y6#(%IjZUsGlf;x!pYhkh6t$P#jY%_7(p&yzt} zStEHpU3q{7ez^wlA>|!c{7j_!nb`ah#%V?;>O(juiw~gU$~}zY>OF?57_bPeltbYQ*0?p(oe-PHcUQ9Ey@_MAUD zZ#oMTo>`ulv#%VsU3bUXIoqAGE6x!kpI=aD&sAK{E}D+3(4GB~kF+F=XjYBLKX}ti6g{;pZq@Oy_-W5eX2h^~->zc^b}B@D zY1S%QL`P+!coe-Fk~;d(AAsW{m??SYtm!Cd^G2a!p1P>8u{V>fov?L9TJYPYV>bpB zVmZ6y8CJ3u!5(SP-}Edw? zRDNj9Rz$x6R%}Hvek1@9KH1r!@G@s1yuu&bVPpO(=WJUo^Db#v{!X$AQ`CHivsXA4 zdr$P;g6g{iZR!@M1E|i;i|Fe67}1_T z;E^f@77_Vq*)$Q%?jSYQ6As_Po+=(c8%V2o;!~s!MmAqVXCgB7F%Cs8+{B?Jbkt{g z&Jq#I7qPy%>8oPkfkdQ=(M61Kyrn*VT*g%#<7?ad*pP_u=wA!;V@o*KkodbP$x>Uh zbPd~EJo&PxmM{?LCzi0aMelp0UJtBK^lhqQQqmlTr1>HeeD3GR(gAeiAk&=Y>=2G) z7$@03r!ay%Mp3{KT*WcGL(O&e#~aAtL$0W@DgFuL_?&I<&p3_0;SB!H{`L<{st}%4 zF+8W@>|X-ez8V+-WU3QC@F62WQuhT=j(&(AF}CCQ3~%9W!v79;b|Kci{oi<4Ln_+6 zzjI5hyNwY47|(N$@a}WI2{fLRV^%Spy@PXP)`hYD+b|TyciqOU!ZmE=ps3)3IUs3z zfrPjXFNCv8cmF!@Ax%X5wA9#l9&Nb5redI9~HVHYTqF zKVfij^7f}3h43?46}HxN?>2PrQ6`7$MCc3LuVKdjoBJm-@iN6B{G3027Szd{;4DJ< zs{(ZuSFY7a+~mSR;&ru&co|RO1>)~umKYb{aaLg)pJ%ODXs}`j z*5MaKJH(YciIa?GSppV03d@-T&Tv%Yj3kc#n8bSjMFNKLOHM=h6@Kl%uj99TZ)3V* ZBMseBVI(e*h79H>3an literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss.class b/out/production/algorithmbasic2020/class07/Code02_EveryStepShowBoss.class new file mode 100644 index 0000000000000000000000000000000000000000..a008f8f0bdd38159ed4f2064b9190d66ba814448 GIT binary patch literal 7831 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 Tuq|i1mu&?-sZuReixByL6raia literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class07/HeapGreater.class b/out/production/algorithmbasic2020/class07/HeapGreater.class new file mode 100644 index 0000000000000000000000000000000000000000..adda0bc2f506284435e421bfda72db920f687a9f GIT binary patch literal 4026 zcma)9>r)%o75}ZYut=;4;aL#a)QPbqz}OD1v4v&)z(z5~Z6FZiJXoYP2n$J(gk#*M z?kj1MzLNAceSGM2ro)$hXlDwk+nG*3_ftRgkLaJ!$t0z}b9YxOjFRav?7e%>x##@O z@0@$?>L368%is3)FoBxq!_&TG+A6Qzw2EQ0I@UW(bfQZ`Q#PNmA5cOsHHKXEgaG-1i5~P) zRs79mAKDtUlnDAv^y4srqzfC|-&M2!3RkR>RVkDb;&Q;m7jaZWbGnePSlN8}hP_4P zQD;XDONrQ$5b&&tV;Ce;t2T-2jHY4-HAOFKA|`f&Rwfh15QYtmm^gt^FLq@*m9N;V z!kBU2%5B=W?h@;MldgusddkFUJV%?wP5K_MgYh7iy6~ED#>AI!Rzp~rOXbUUi57Lb zUI>%Eb0*Fs!G-c0LVrUvr39_GU?Pc&ESQqLQMgaK2kU^S>(am_**hraub8+h&JA&% zy}KoOxF)<_6sD$4r0~4Te`P^fQDvDDQfExu#4O*-LjLh+>i>@S%O<{p7ZmVvb~XPQ z8D{VX=1sha1@X^XmO7D~xG|{%k#g4)&3Fm74J?_sgO@e5`8DmSNQ_o_)_y>^JX=e$ z<5d%{VVUIS)pCbtySCPvv4W_9w1yVnsGPxO*tlz8)x;XI8ajNbU)OXhWp9SoLaFwEJqbeTWkyuCX2$pK|5P z6EP-0zf#B$%u_Sjygj?Qv0|6zt(6>C+GYxAE4N^kvhwaO>Xo%@S$a;Ljzk<9x$N4% zZ>#9-?X9=Ti#Jj~0ylue^#gD=OB6=7Jhf4*u&ErHt61rKY-k?hvg%k(Ugu$n6js(H zJeAejdZ38@SiVsXu_ba-wC#IxGGl68FK(9CJTaXHiv^zBpp_>hM#(PbtTcIRP#u*u z#ol!(mz&Dj8+N`zl{T*iRT`wu=&Q9RZg;7+q05p-QTKuUoIqJ%QvXdV>>VsoGDepU8H z72pHTw(v5a0&kw9#_>@6Pw4(741F7V@b_HM6^uqD>{TvJN6~dDj{FsI^pO7z2sBTM z#joOdKE=Z&j^d#~Jcwl{K*#do8p{m_EX#^m*6=kPb@{x_QTPneT>H>2jy!4dXbnH1 zDnB8-iLcX;&yUC)enj?&GAGgB;Ov`NcHK>J6!hXQ9Nfh-e|RE-!I}s>cRn|s6UX$o zXzJT|!8QGsutjSzG0jMhFRGCE=>9X}yEwTRkKg9YlD^FP*u|J%9a0xS93kFwJs3t5 zBQ;USs!_)dL@hEWYLWR-e}~ZCsz&`QRsO(PFY1|iP;lv)U5qP~yOlB$jYl1sHc=RWowO%}5KsK)%aR1GJFDJ3QY(Rht7G8Adfr zqAx)^`j4nD$1DWxQ!E(>cttDeAb5V}Qb!uv`|i0NV+aumBf_?zMm^JzZpipzg#ogy)4sn$?K%X2HrPc4n=Ia>! z)QBYeBfml8Hag<{jDNg;!tuAg_r4$F3ErjPQD|gAxA4kI;uW@-SNZMv8oxU&-jOT3 zWzvi$!z; zKIZR&fcz416ZkI{fRxi!2C0%aD-&ViysnmdbhibB`$oKG(4$AZZorFYq|bfvPtRd~ z^Mhf9kma4d&fEAN%QVNr*}xTs`Z}d!j^AoXS6NKGL`5w4K!p?{$`4f`x3gvbm@~av czM|zdL(!5#cC;R;LU4-pC-^Dt1@N=~0j~lNw*UYD literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class07/Inner.class b/out/production/algorithmbasic2020/class07/Inner.class new file mode 100644 index 0000000000000000000000000000000000000000..7a1517094f9ba8ae15e309c259d38e7101a63dbd GIT binary patch literal 524 zcmZWl%SyvQ6g`uqiHUt#+xXnLODh<6f`)DcK`6Rt=zbDIof6ZMN5Ri>A%Y7(z>l)t zNmYp5%-nPCId{(7&#(87)e0VtEhtb8Xm!+}Gqh)X$=#SIQ};fYMPbgMdm<6}kU@3& z6BAo74On$-qt4I>W1eN_7w&D6L@7gU$>Sno=#2i)xneNKVw&*0NJ*gjJ~2IKQ`es` zXxH-x617GmiSCN0AWD56#O2(1$m0o5g~UIkmOqM2sw-h=JXo5%3$||;89ol!fAPG=>+!ZUIl;( zCY_@fU9mzkVacf(Y0Bq`T~aqAEHz%h8tNRn4C@W2{03tV=b35>wkQ^83fO=~dL|rt jWlEe|3n z_yhb=y49m6MZHvYy{`AV>h;s}{o~6E8dwdGgX6&skw<}0Iv3ZX775+29dyrS&kza? zrIpztIBV-iK8o-?1R;hH5*B)qNYjnY+ID;@H~yS-5+yr{l$AEue+ljtUlXWlc_Sf4 zEyapLZPV07_GMCUeK~P`i&b5_3}LjTv}_M9yE5sBZp6q~EAENtNF>VEZ=h?=6c4!c zjW8iNj0Z_i?kFoY@y@W{c0EF|EmN}>r^drC!qg|T62hj|GTFA~OMX0`*^Om3E(gE? z+3(>KZ}FDdO|GUG%VC;NOhSR<3?rS40nAqKKvm}!o(;p*2b7NQFm{Xan~XQhaguq! s1zbe%afuOV)`&63Xvli3f_W@(cCg4Xhb8>X@-kL92i#NSNh|RG15<#FZvX%Q literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class08/Code01_TrieTree$Right.class b/out/production/algorithmbasic2020/class08/Code01_TrieTree$Right.class new file mode 100644 index 0000000000000000000000000000000000000000..31ef775bc2ac0e2ffe374e7967aace963f743a2d GIT binary patch literal 1868 zcmaJ>OK%%h7(LhHcoJvayj|Kjq$Q=;?!##@5aOgj116?!0(Ed`cupp__O$LyG;`j8rXr?cAG#QZjGFGcqhpyVdx?*pdVS6@`JBV~kqc&}O1R3Ry~@y6 z+yR!8XgwNw(Z|qf*p|>u%RR@hF$^Rd?E!(g)It;kh^yGI;XWK_%JW(Zmf#icFsLhf zt9@HhuGBrrtEmg}T%Y!|M;!iGJ$AeLW}@`p7X!eN4{aDqCz3)HR) z2QZ@H2p(i;H!V??nmykO67wMqNr@S8_*Hv_%TijyF&wAT6@INGnR=2wu9ps#a-BGd zjEYeWr*N7fwrRJwpxqSQ(S=PO#kZ_2_;muv;t>^(YIqD|485BG%@(q^s=G6MRi>Iu zEyxw)8giIm2wPsczlj}8P6bU>VB$)`F|A4zlXz0YQ#i{Ib%pK-cit4$ZQ(b1DSU>G zl3B5IQFq9z@txx|5eUs+6{s}xKa(S^a#9((il)V9>Q@)JGp8@ssM1@s4ZT*@9aFyh z#jvQFF2iu~f9ITFBQ(9-A#b)!Z*v1>;(gP0mL!X3t>=*cmGUYH-MB(W%x8@(@fsJT zDdKY7G4`^hz@RNV{F1ra*a!t<)G1?yiVSUrUAIUOqqb1YvwiIG^EJdea(fFpUDeF+7KJKHgi@ zCwa%x?<0C_9o^T_=RJn+pnn|)=Wk-zd-uQJe-8uecp&_S|5@@Xki5Nw1bjjJ_!5Ko ziVnip9(TNf?{gCqia1Z~Gt^DogM;)u+tTxnuP5KsvxdoS)bFCpuN>V=-O>(qaqb&C|4k(Y^HdDsC0z9G3wVX@QQAl+7Vs)M{sVh7okjov literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class08/Code01_TrieTree$Trie1.class b/out/production/algorithmbasic2020/class08/Code01_TrieTree$Trie1.class new file mode 100644 index 0000000000000000000000000000000000000000..50c37dd586ee78b0e36c733fd2a14a900675bed8 GIT binary patch literal 1951 zcmcJQ&r=&^9LAqFyPGA+rUYm}S_qWV76OzX(ohDP&=bDy?ChOf8bx?)#<_b>~5Muubc{QmdPPa6#^ zVI_p8l0SUDd7K>AS@}qvQw#mrToamIb7-@l6#S0)wThUa!wwpU%|E z#?0)44cjy}Y{MAMaXlM`3MqsLG!;<|XVCeY6YkMj0oktAIBF>S+Ro`Py3nnnN5fgf zPl(MswrTAOM4VctqTBD(W#k@ySv2eo zy;xJ1Uk0`d;zAIbhwg3_Ifn&7eNTix%%5H!jfm000Vi1I8zX z&rC3{m$-Tl5}$xr@(D!p7pPlL5PFR8A!`9#=JgDBfT57l&-3SSg)7ZJgE5SAC6L5~ z-%kv4Uy!xEiD!@xCw@ZgPVxxh+|(_x2XIsb#Jl$0Fy8=<&iB@{Sa1I>1PjeG#TBeDO@FG7(47TLw7n+z$~v4yXP>+ z6EfcBnE}X3gR7v5h>9*1^D0z9m#;iWA3I!Yxi!GEu3MEPox1QHitUD#+YDQ1H_WrO zyv=RjL-WlN`NJ2kd0zeId&O4Ayt={n3Q}~CAWH4sR6c-tvR|V!DOMJ+hU?^7q)%yl z%=&%2gI(Ng`82}1?^6`pO;5UUuj$DUZZ|z4U(3Zx(?!>(1mp%^&ncTGpCkGgLUf8B z3_n-+lYYBStuj}N^ysBe$K!Ol-5qc52{ZoSD)ESo{K(8P%0PxM?tQjj~kU}!3N`VivK+M ziJkgi;CtKQ?-72J@ShNVi}2foFA)Ay!rv$SXOz4{m;&L8Z-ig)ek1=CUSjgx@6RIV Xy7x4b2WB+D|CKbBnT-hVHxc>=HR(}@ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class08/Code01_TrieTree$Trie2.class b/out/production/algorithmbasic2020/class08/Code01_TrieTree$Trie2.class new file mode 100644 index 0000000000000000000000000000000000000000..907faa825a5540819d29f145d8e364501a747284 GIT binary patch literal 2282 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class08/Code02_TrieTree$Node1.class b/out/production/algorithmbasic2020/class08/Code02_TrieTree$Node1.class new file mode 100644 index 0000000000000000000000000000000000000000..ae1e9ab5910ee2955988bc90bd9dd60c244faa34 GIT binary patch literal 534 zcmah_O;5s55S*ojepsO*3L*$59+ZQiCliSm5+e!0LUvD3a1=^^aNI}t{T1X>9u&2(G)AStwu6a3{ig8THv|Zng z&j`x?!O(yXLxX8y1s0(?_M9kcoisbaM6`}?2catlp%8n0#zzG8k;???%DJqCoE%bw zKaqINLLTdcv@f1x?yBGP{**gqJ-LUF>$$$@&mKl195^G7nS3u8JKoR=&-3u)%SYr+_R})-z!9 itArx9mZbdy2dQ|^0xROIl zD7BSVc8}nF-8~IaMi?N9F@>10K1@WKHon*Q#}~5EJntJN`$o#09@kBRf5X=V>Nws^ zj9EwWq`n9+N0`eW%dAT3M+p@LX>-#s@4Cidx=TR#@o1=xq_g6E)JpW=0YY zUv{+rLHRZvZRJRsR`<<`TYIePyJZNoU8Q9&yB7lVY6`R;fql2c)ntDiyNUMe1N z^BrMAbTZD&P#!2JRsGMfZ*Dz8xhGS5G)`@R&xEB{W+lWOt)LRicoV~ty^F&eWTtKcKnIeXaPSimMe<#`L+oFncj^Q1cn{{mumjh6rb literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class08/Code02_TrieTree$Right.class b/out/production/algorithmbasic2020/class08/Code02_TrieTree$Right.class new file mode 100644 index 0000000000000000000000000000000000000000..008524f035e7a6adabcec6918d991aaedd2335a8 GIT binary patch literal 1883 zcmaJ>&2Jk;9DU<;yos}JKJAjmA(WJ2yJ;LsfejvrX1sPbUtD%~e*2sE-n=(6pZxpb z$6H&N!s}rKpr{CHXhVph`-;AnYINzX4|;boU0G-a5EJHwzPk|h=G3_Y@`<{H)X ztnRFy*Vn>Op>&`Vnu>^qL+D}{Dpz&K8J|dJtrb3g>Wu~4;0reA$1WI^Rl-%4tqq30 z!XB`UK#ju}#dgfidvyXhjmK0xuHgwxF!XK%G+W5tRo$868zR+2 za!JgX)R4gxL(r7v{wB6RITf_4d^@h_+J;#PV;WCuID@kcVaL^N*I6{&)m`B?dMSK{ zj-pX9b+=}dSCf0U)08hXZ=lFVs^KsU7yfsj6KsffFSp5?9lN)=fD-Y(Y1u1+MOrHz^8Qj@MOQChr6cCChE{l$ zyQC@PaNRB+WJ{hwTeJCPW23PU3Z`76j1?*}w3V%zNrD))g^O0rF7uor7TUk-td0pq zv>E5Peyo3Hajx659upE2;@4ts=9S;UCdA|j(0>Rr$NWho0j;}C? zujwFsBe`P@e2<%$P{4U&pQCQ#9vr0a`IeryJw3Umo=r^eqJ9TmUgh{f>Q?rsi;;)G zx1{bn4B>ku@dNq!qfcS3r7*WsVNxi30WW%v>9ii-{|#3fY5YXI zKO=%)e0=d1U);w>=|+g?LW}M_0us`*iu9q5~W?qPZ|I1r=+ zpV~xJY8wdF;l*`n`sUUb@oiN{Xg>kJ(mH;_2!6*X{=f|Wr2FJAsW3$;j8KY2N=l@f zZE4M7L8cd=-j`4!1d(F|%0K90Do&66O(g}3R1Dx{T$Jx6yh`sdt*aADcnux@0qBpS AEC2ui literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class08/Code02_TrieTree$Trie1.class b/out/production/algorithmbasic2020/class08/Code02_TrieTree$Trie1.class new file mode 100644 index 0000000000000000000000000000000000000000..357aa3831d4870275c9ab723f970d64f7589d858 GIT binary patch literal 1964 zcmcJQUsD@Z7{;HI-DFAFGyxhA3xrn6p8zEw0ycmxky;eeYA79w9oQr*S&SQIvsJwJ zOX#IH-t>kU+Ro@qZ@j4EH|VG6t(5|6F$5|v^ z5u0}%%ia}eb*tI3;aqhb<9oIp9@)x)Z``wK)5`s#B7aPAQ|2n(GJz zwzAx2dlCuBrIBdfHHu%a8T+0j4QUQ5nHAHeW~ErBx}as3%mV>^-!Z?k4t!VqkV}C` zzIx9on%6Ap@oZC4E=eH*EjhF1Ua!_%4a`^9Yc8JyR&3jJvNCn1oa^O`?;Zr4=QRWX z(1lDJpMrd5ocVf@t0gFW0^+Gh5UJmwZ9YQy0V0R21u)3hGu#0rq4I8H>^H=f?w`Rh zMz|74Vbt#@`nfN}+TQ3BsE4Bu5noFkA(9*4JVK|s^8lU7jH=886Tz{^KVyC@5uA=2 zr5Sbn2=6A;sV8XjpBhT?jrxi6KLo`u_1|T`KH0BNDpfqCi=Mv$D!538Lx@mcj0(G{ zuZIc;F@_0@<3n7+CrIN4Cb7x-Hr|JYY0udr)hBUTxZ?y$oyY0`;d ziydN|-h&*bctT|-aHR(8T!l2WYG~6itw9r{JoFr0?C`-ctsb70w8|-xI{zaI&A>`c zz-F6)d00z#xa}wCJ}i+xd_m1)^@q=jtxmAI%zFi9(SkWdNu(W@sXIgO^CY%FH;cH2 zkLc?PIW6Hf>v!=nc3G7Pken`Xzt1U(JDBm9wBuHTNfOr^Oz7{JV!1(4a_WOxXOmNy z#-1bk7s4dPUk^W5ct+lm)G~7wRPMjzbTUqZ&2+rIufTZ9Ro{I!@*^|FCh zHGWxgh|_QfZlV{TGcsS$R-Q&~5ztM-xP5HDld*acljUQB%MF9A-0vfa^TPd@bg<9t z$(V%djL#|m=jfld=l&P-oz3RIr1`rvzfJQyG;h#+f#!=eU!r-FqIYSgK=amH&CBl= k|7rfCd4=cY?@xxQlkW>mBAC$t|6~@ZL;iy<;3~rZ08(vMUH||9 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class08/Code02_TrieTree$Trie2.class b/out/production/algorithmbasic2020/class08/Code02_TrieTree$Trie2.class new file mode 100644 index 0000000000000000000000000000000000000000..21ebfc2a7b5cf7ce719ce53ab320ac38572dd4de GIT binary patch literal 2282 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 TZ3XS?w5Mp_pnZw<4E+BA+;kGp literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class08/Code03_CountSort.class b/out/production/algorithmbasic2020/class08/Code03_CountSort.class new file mode 100644 index 0000000000000000000000000000000000000000..5ea33d2d27ff0c8e4161875c7efaef279e5c1021 GIT binary patch literal 2864 zcmaJ@-%}gc75=VvS1ZZOFJVFWWkU_I5Loh$)^RLM48+uG1jL5o#JCNMw1x#qi&rZr z^r;Wbbfyn^=tHONLp$}0U;GgF!DZ46Z*6AsPvkk1Ognw`)TQ6OD;v9}Wk!4No_p@O z-}%mW&+^s3Ki@w%zyv-?AOg*VZoxoQpncQ6Z|5p@Z9TWJw&|1tf#`%=bAw3%Ej_wy zA|}vr=v1f$&bs4kKL?P&F<2&AEVQCcp!Lve&JH%XziNLXV5AF$(Lw?pNSf%ha2%=U z$2J1DlAH22iS>*e0}-CD31_>Nu8Cy9E*;;r1|azzFO41V-?tiPIL+7!~L|B0kY?%hP0t*8|9`Mlfb!ToP|8&q_^$`NzQo zayV<^oQ3naAn-=1V%O_uFXd*uvUB#rM>Af7DJXh6*PWW<+ktaak)p^WMUvwclAOa2 zEL_A}0`Zc!z4Kz3oQBJ9TevI>z~yF4xoN_}6=_YByy~{i@SZQt?^w8sDPnc&*X}j! z3TLbiW8IdkGZx-en^Y$1s2FC+!Ms~?hGMub&^FsBZIQgeyBwYJkR;$ok^mB@%jD=% zbZgFhqq^q!OZHlYmSoW@*_CD6cjbH2s0SM^OVeBYU)1CUgv(!nzfG#Z_I-iK3SXmZ z@^BWVWihZzTXXidifLkr`B0*Z?$3B?jI(9C(%@9{9jQk~I2R7*IaF=8CeW2$IjXSA zZJnDsk632xz^MmIZk4gkdZScwoH9|~HnD2r?yDkJT4Ny=y@p?MW?e~0>c3@>mD=OJ zY0nGlfp2fmIl+ckuD3<8l|Thm6E&%FPhj})Qo6PK-j6vH!th8 z=@F@J5K)P%hn7rV^=DRZs6o&xW_Vz zK>@2!qw;6u&2Z`_SkIByaytsLiTeU4{=X|l66S{?3Om9s0mMKlBg*G{e9LhZ9F5GM zAs%xQL6J|nOe5y_w3_pIEbuKZ?-?!JEH2Q)plvJjH^ejh#slb&lko}dN`Gem0Xq6J z{nKyDliEc+rH^xIa6F~o$*$<- zh2Nt!Gr;wfzVPtiyIq}*UrUIZf;f$K1t$^qYxe3Ebn$tD<1p7U?9AtpM4samyYmcT z&(Y&Ubfe7qCVEwR*J0B8INrw%CO^&E@1QdJH0wz%%GVJVoa-m?my*cxtnM(AA0hBz zyouB5ybNQu@*@=z!RYvaNz1=9>67VO=vS0PAd|Kbd4|?7)ov!pM%~2sOGeV@F_ifd zhWISA|3#wMlt(gKbU9HiF4@Tc#?@rNe(h-3u_zJ zjNzO0ImY_lW>tiO)dDU04ABr*2XV3KH*x)i0VJ-g#AS|siDOd191ZOeEo!De%IuHr z|3R9Xh>sKRSbtWT6zuQxM~o5jnI%x*5~cLE5?wF1tHo)1@ZgTOk|hGOR=O0TYs!g^vT=R{U`Kh z`m&#sCp^LMuHeo2hPEfj9NwRh=l95Sky4l^p9}mSWS(5!pbTy*fL)Aj@}5Y5Qm5%A z&$8$VXoiIJl$D9|Ui>sfBm(Y+|$a+v%bI@t-Nd0M_tKSX@jApE})eoFr>V##X{VI+U}1cfk?(PKzo zJ}#-*VS>vf2^4~cTNKg<1pFbByiJL$V1WD%6Z9xyXYmoMvdTtbllL`TLkZXEH;=ot zZeSfQzdf6{$2M>uRYlAlraXW#Rj()`4Xb*|Mlz|$l3np*#$Dy8Az)-lV3aZBO^Ogp zRox^h<4vAfVj0%CTi$R(iT4bQ0~)B_vXFnkTdaN2#K-|78BH@HG?;LB$U2XT5U$Hn T_V`Wyw&C+F!C4&*0_yn>ZcjcU literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class08/Code04_RadixSort.class b/out/production/algorithmbasic2020/class08/Code04_RadixSort.class new file mode 100644 index 0000000000000000000000000000000000000000..3fc46b53ff95ff1132c9703d563d793894a243ab GIT binary patch literal 3522 zcmaJ@-*Xe!75>({tChrJ3mMrF5?~V`vTS6MP(!hCNo+_=ZJc6o5+H@OwAhPfNk}V# z(=?%t15MJB4AY0CFKwVxrX4yH+8OGm)GwVjGkx!0(7trqnNDZ=#Du!vxmvJOXrzjw8e(Ui^GR_ zm>fhq>Y$X3v?zwBU4Ph{_WaQPtuzx@>afv?E!|s!pj;o>K%3N039Wg`GB@#8da}C_X3VYrZR5 zvL0X^{6vdxM7dtgy9Yg?E%D#wpOfU{zGus2 zzvfq+%9!iVlnb?%5Z;Pn0dHHlBx!zG!`78r_Dbi=vu-bIfpKeO{y`_tgqYXx;p&79 z6dOjLX9gDC+Sbu>dA45Zf7ts~Ghf(vbiU#~LVYzsjUL#)y4nI0Lr$?c;rVWV81FFf zT89REq{NySl8)%sEPPkPwugLs6l4omG;I3+s;sSsf9zagwru&V0aFGcK2P$km!rnf z%>D}6EecI|g-==LB)-n49muC}nr{)QK+eeKmtm;2WcCk;WS7iqFm7e_?2=K)F2Y*G zS}~|AgK?_L<|x0s1K5z)t}>p4gDI}(`7_WI6;07<9P?A!(7DnRZynJ0rL#-dur8HN z=N7SkV4+F7vHTBxU+N0){#2T=*-;qUn zg5SoXeTLp=>V2Vfs$iVH6WwbWec?oS<8@q*Mfn;@^_dAXeH|OK2{V@nFJePqC>cqF zPUei$;|nHT{Iek{vFJ6VxM0dJCl8~L3pDf;>FHcd4Ou8`fiE$|zi3#O5o-ShOO^wz_Tx zl|yX}WfI_Wo!gW{yxZjF3QRuDu~B}DczmV&pXp!R%1-9}xs(Hro#wK2ksKZFjB+cEl}4w{+q z!lG1O2Im4NGN@8w*CH=cvrURm8%_5VcdUeVI>b5?R*+<1bF-FIU@ zY6LHz{qP^S(SmT;(jsALF|kHc@^4Jw$O27BvSbL`xTO!Iq&>F(0z0y)+@~x(*23-u zjj{hL=Wb))Nec}cps{j3-=o7|A2*)RHz>L3i8^;@#%%my0d>m5Jihq-A@L=oF@jCP9 zo5c7A)AmiyUSwdt#lU=<{=CJ&EU*>5jlHZ%Fu;`plz|w>+(lL;Jjm~Lwl literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class09/Code01_LinkedListMid$Node.class b/out/production/algorithmbasic2020/class09/Code01_LinkedListMid$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..6b66ea31d056a490c11ead5aee0e20ce0300a65f GIT binary patch literal 481 zcmah`!A`u?o$a;&tt z@!JcJb+?4VRL03g7$+tggw|hgBRG>FkkLr@E%_otH;FcnB?IsxJs92*wopouCx9~Z z3bQdQw9f9mf_lvtn9s~I*ydP5mSYhH`z>}?nbp44*hy=#54(KIUxB^USHpgabsR9- Kd{RIiO;}&9$zt&U literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class09/Code01_LinkedListMid.class b/out/production/algorithmbasic2020/class09/Code01_LinkedListMid.class new file mode 100644 index 0000000000000000000000000000000000000000..1fed6644230a9e2ed9d7f61b1d90e1447a67e730 GIT binary patch literal 3778 zcmd5;Sx{3~82%0kNeCC&1f*gMiWUOM;tD~kf(uFjMN!-@$u(RIfhGZ$hwl4ynJ!b? zX|=xDx2jXo+L=zLb?8j{($`L(+6UkJuBG3}J&=S=XkV(Cd(QdK_I>~V{r}SKCsNDl{VyZQ$We@wv9Y=+HPi-4`7vNr=RWH{m0kO@to z%pcOD(YnUk*5QCrSAV+044*Rs9cDD$d5x9jhUg^ z9g&EBQJ&^T7Hsm9t052h#G(fR0tFQvGx2&WkI8if8VXUw%cJHcVj%Q(X)f0A1Xgk! zGzh7nqP=qV0d7)UCEf8Pw{u0W8>J|7Vzq`fC>JPMh=;(kAv4ewIXprKSp4@^EP{FE zBGyP8>ohzqK{z62a3EHnfl7FssM1i4nw04ET#UwyAu=5vl}s&~=5TFy#0C;-8l|TM{j>oao!F#dGqwoiCOq68ju}BCBH)ZK?m8<_nCe2c!s|jK zuYPd(nj2m;JF!he3!a&ZZ7K{NHzGlW!t(?)9)KMhc1q$oard?jpARbsORuzP*p=`~ zgEZ~YuveOL6XEEN7&0PqcAtj*i47a1$)}-Hn(~t`NZQh^;Xq=`MruQ9ULc#AH#$d$ z`i;mTy+1@tUdOOs5B2I1Q;wC<9vd*D0#7a&XD?43F!X@bZD{yBo3nb9;mhiY>Hc#* zeMB8*^N%tLHa)_x3T@Sws}6cCx03M-B$B@X3e zhJ)V9Ue4>0AZg~$G0n-CA=%jVaFmLZO@kAD0e8>vXvA;qHl_E9=PD)Zr3eKwJ9&W5 zkiO<6T6;KbL|SD9GB~u$;G&G7OoROA22~9QzXv(0Wh>aGd+tEoWG4+h{K{z>afn|{ z^$(+$qYRntw8+i3+1l9d@l0U3=W948kR==be&UHYWWPfheAV&!RkDfq@~h;m8v3qJ z{#kW{N7>@nuVw~<6|DgIC}PDb;kO(sunEOzVyW6ii-cBcU5_IK3EHY~G!D0%Ap6)$ z!!g>I!CoL9L36^zUnwatWfX-k6@?~Ja7(DE!2bp6Qa%A?tf^~=znr+&q5|ts!}_$9 zRVjhGNukc;yoI`GChAP0=BqM=nu)7W-%_aC=5)Nc;rS0;5qj=n;{$v6)cnDg$ z{aa-9-9fgmY67{{RpZDx5?A^4$-knvYb}x=U)hpsW4>aQv7@p6#TCg z{JKTLpAY;If|#|Zv7uRlTXCkg%(p`A$rUpEcDVj6tuEb!7YFL*vr3jB`>ywuR_ z;5KSAnefGJ=yi3ch3b4-MxBtBExDV`2S*{on#mMK1}6j@0Tj|Lx4 zMd%wvs4+Du9;d1Fd1*Y$RERJYV#vlQ>5MTI&Xdjs)}c#DG#XV{vZrYj&7xshl4vAq zQ=G;b=oSrIAH`q?#213dU46DYDCww@Jv)21;gks>hv|u-vN%#K%IKVFRCd=Kb~TkV z>mW{8KY4M^Tt}v^P=^bj=&ZVnr+oaZ?YxDGYCdp$vDV*3!*!(RZ5>Awtu?gPq*}RQ zyWG{f)LpyfuJ)zw>X5s-mb6R0_10rMhE?o8$8zyJ1@i)h@**Fsm-t-0%yRS!GvQTQ zUc)uKjvw$Q?&B>?;BEYZcknCT#RI&Dhj?EId>|b7P?X>!(SVP|7F-t1_(UAUr(yt~ zi6MM0BDf;nz*TXTr^%w`v7~~2_&G`wR}hGou>1I(_sR!+0>9xbd$#yf{t!8n_ycw) zf>u4|7s3heB-NK{O{3L`w4Q|~PcAh1zuQS43`j4r9u2a!ld_97$@-Jd#Wya5jDG+p Cq16BY literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class09/Code02_IsPalindromeList$Node.class b/out/production/algorithmbasic2020/class09/Code02_IsPalindromeList$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..f454f4a059fc49cf091f187ca4b3b7d3233cdac3 GIT binary patch literal 496 zcma)3!A`xWHG0^2`)1$Uotgdke0$$)FhJ8r23Zq^gBpe|A5PZ-lRcc@!?CtKy_J;XEO?7XFHn#snjf zPkif%`ycBC>)YebltI5hD7z|S~TaBIcF7{!UPx)uCm-=eh QPqB_eMw?FxsG|Yv3n*A=fB*mh literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class09/Code02_IsPalindromeList.class b/out/production/algorithmbasic2020/class09/Code02_IsPalindromeList.class new file mode 100644 index 0000000000000000000000000000000000000000..53cfd878f6735b1becd43af18c070490fb438fb1 GIT binary patch literal 4068 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class09/Code04_CopyListWithRandom$Node.class b/out/production/algorithmbasic2020/class09/Code04_CopyListWithRandom$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..067d161c8c5e151c5574831fd5e57275f0dc17dc GIT binary patch literal 550 zcma)3O;5r=5Pb`kQY_zyA0SF%3~&$*UW~*GiIJqiL=Ac~OWDYh(wepq{aGG}i3fjx zKT4c!xEej|yv*#pH#={?zCS)!D|B&~LJV;onu!f07;;m-;BAMyPwnf`RM;UyqAOh) zUNFQP&7pxL3>_&Gn=l!UZHEUz=d9iH#-elj*z=xWEg6LOGMwCSckIoM26RK*1$P)& zU-2_0vdA%Lu6QB+hV?&@bHy!~C@OBkkJL$|(Qgh3)B_l@mUP8nJ{t-Dj*lFw6fDo? z&XD_3Mto^#eiSmRYIS@g3bLv^$ymmETOm95@{9kZ&Z(=OtDN1 tAPo%}7^IgWr6Tg!j_x8pcGgo$(Omiy>_+@OR3faRMwp_xNmOwF;|Fsla5(?~ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class09/Code04_CopyListWithRandom.class b/out/production/algorithmbasic2020/class09/Code04_CopyListWithRandom.class new file mode 100644 index 0000000000000000000000000000000000000000..1ba0b9bc1d0eb8f3e1205130bd32f818c5136c3e GIT binary patch literal 1713 zcma)6T~8BP7=BJWZDAPj0~JA}C@kB~6pDg^!eSJ^Fw<_L8(h56X&GU#v`s&ZUhFT} zcw^#E*l_D6Dv2f=uh?Y$0ea=7Kfx>A?(@zRgR%zZ;+*%q=lyt|=bSVD{QL5+Mg!A0 zt0RPP44Q!mq6&Lgocm6?;1rkAKj&85d`%%b?G?S+j6yh(oR6VJVV@sVuX%;^Rj0a~ zamqSkQl(8{C|_`@)zLHQ+0vprI(~b$RDNiC)!I$3wtU?wE|yjYv)pNgj&=hb*u%Q_ zoq~dz)9KqMIQA=OiMiywR6SteAPzC8Tql;vg#9hRsqLQRc9--!Y@i!GtX*^;uvWs} z9n>j-(QDu+`UqpmW$MuX!1zwnegns(X|&>#k6}RJ*p7_}QuI^UV|zt6TVKt&m0z4( zfu8+#Den~Kor)*xrc+fVlOpI zwNkI3FQlHqSjXNM=)6g@E3?-4;BQY@sTVl%8oDL!zUQh!m}8_0+Bl8Ax!!Mw6GWpX6BG$9M#4hjL;XN z90A{8ZK@CoBYM}lgo(N-}n13Upo|?AGSQ{9$gt8?%&=MVl zB7G^&DSNH)o`G2gTH^F$Ib?^qif^D@Ca%|@spp7G{9BXjvzlo$$NVbCl9I#JT^F%} z6u-s0ZcXG0`*Pi-L?CF5ItP#R#vXUz# OXeMdtzI7aD(E1-)xqg8F literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class10/Code01_FindFirstIntersectNode$Node.class b/out/production/algorithmbasic2020/class10/Code01_FindFirstIntersectNode$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..251b0de7d000e6972b37d178304b1b85899a1b64 GIT binary patch literal 520 zcma)3!A`GX&2&ec`zm(`~W{n zoUNV>hn=@?cHYe7?br9m=VpTuPF&=Ww_$lGpvX{L@-^>ATs`)0=SvZ4hT=#nsjnIG zo$ky*362fdLm3`JFN}Da4hQ{lyby!ogD=&>mr1GvrA3mGeo7B*6Br6>9<2yjz+fry zLcK30+c&r(RVV1q2+TBw>O?9rT|Li5a?j@xW$KeSd*dN`_g#9P@0NV-^8i5al~-G)xr#3pp;0)#vWm&8w+qs?&SbF%=kw)h8)6D>GDizjmG literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class10/Code01_FindFirstIntersectNode.class b/out/production/algorithmbasic2020/class10/Code01_FindFirstIntersectNode.class new file mode 100644 index 0000000000000000000000000000000000000000..668e21f4d4789ba73e13d512f53fcd9eaba16ffc GIT binary patch literal 3306 zcmc&$S!`5g6#o9sowd`IPRp<;OX)HTZLwCJBBE%uGBcnhjer8T?br@XXX?xpM1zV} z2yO{3C_%x6w!WBDqR?n!OiW7RgD*b#VB(99Xd?2aNd3;ew=E^aFp0*_Wd8sB_nh;e z?>o!ww^zRSYI+)LvB`rX*qqS3u*0EHzFXg`H>LD+f77O(-HG13f@5tmoy@OOur)Mx zd*FiG36B@W@G7k8P3gH@OLNnPOkbk8WoJh+-Pe)K=JK8Cd?K5peVh*ziu)7!XeKjc zO4}NuH)K~U>g|n%C`){$UX-Dnfu}Qar^2Cv?knWFf@7=nVgafYTs@imfEnFS|5lNUE*nL_DYLC5s`0IOK< z$v(6v98PYlvJGt7W|QNwF8)3iC8Oy|4u z*@QmWF0~i*A|$m}&VrxU146@UFPhM-VBf2!hS?R05v;*2PPBS)s|2y&I&Kx5Lvl$f z%^;=C6w0E>bRs@H*ptX^(R)%nsf=cN^;EZ>O^R$CYWaaAq1N9Rd+m&CAfflQSnC?D zDYlQuvQjST%Im#*V*1d`1)|TWa;eNdE|2Rua-;PQXK5n~O_W4Es3*BpH*7a)Go}kU zOQ!qV8@u^j&-OFU1=o43;OWW?XL}PJNrAcIAIHpUVUM#Wp2+2631Np`y`AZFBD+Dx zR6_DDBL&NusUpaq1B7S%woz)Lq`2Ax=b%32rU&jci17q8 zet_1%6r92Hu&ar{B%HAzf8wF@C<&j3J3y&qA~c1v@Dz#zp%8`XWYC#xlN>yCT{x!#eJ4xQowA zp}Evw(v8*pmhmPIaVz>?w?A8-aBkm>QD8h(iHM*Ff zN6?I2WI%GU%#0Z84g5>cfx8X-wZwdnfnQKp!sR1suZh~H%2WlB^9^AlR~w1kPQ3$H zikt!Kp<5p+eaN0R`<4dmHUzA>-6-x{`J=WXrY4{7PI`e;Mi- z)CNP7;H(OtMT^+{pJ=WPa872Z1w*|qynm0ZxmVsZ9LvB#R><=l&o6K+kMJe;B4^7X z7W`p6hnH{!FXI?q!59nrYrKZJxmZ&f+8W4Nj}?F{*yWnEDeR8|`3>cXgR<(aBic>XOk83P)7VY62VQ ZoxG$sa^8XU%YQOB^}x9)I~S*)`)_-*?R@|M literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class10/Code02_RecursiveTraversalBT$Node.class b/out/production/algorithmbasic2020/class10/Code02_RecursiveTraversalBT$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..efd22bdc3558a547db413f71c44fb61ea119fc49 GIT binary patch literal 525 zcma)3O;5r=6r6=ZX{~_xiD;tHL*XFkRpLPsA_>7n30Je!6_(UC*?#;l55~lUKfoU) zzO9@MmrmcCH}iI9zkfczmP>STY$J!f3By4FMTY8vr@Za+VAj5$E`%2|6uUBz@eM=X zZB8tdV41KTY`|e~J)cL>WvAT>pGD{D=|OmjiexIril;(F+`k>4kBDO^q})#k*?__D z#S1yNhU?0&Nw4H=P9nn{G$#alBSU2<12IZor$UYS)Td5u7<$~Fa3yuUY8vreMzlL+ zuph%jd7>}%@X0^tzR*!HltvL0== z7)|_Y;&1Uci0|yy8zP|}x-;j@%yZs3v-|b?$Ik}`n80it4G0+sn~0!Mq4k-yW97@1 zvyop|eWpvELgR$(*xr;vD4ki3A&QuRxQQm13h7eWs#Zrw@-vk+JuYG~vs$)z(v(6R&1f;uYT`876b4U_sG!yrE~ifp2_&_f=ny>- z*WTFlVmO0N17}T~!}-5@viP#<=`FURQlplRqTemMl7Hyhj<@K!+S)2ei@HtppqKS_ zta6Rw)m$9?7%(ts;sR0%i6b%NSPW%Sj5%;o* z;b6N`jT1Z~_n3-eOd&d1{|Wl4aIf*m>EO)%4fDXZvr)(_lP4Fb&{DJ=Jzv{e)$WqD zTINbyu~M?i%a&`4UtbJ+n|4(pb&@t0SbS4kYYL|pJ*)Kmfwld!%9dqQYBK%wKWDPs z4N?+EY%9bUD>b*IXKguT-!bDiES*+pn%7nDffi+~Y0f#0c4uUGHQlg`D7)0mmqC7w z;MMv6*XiZyDLy0FeW+a;4Y*Mc0z$Y++YAD53*+=+GO%2ch z$0Ir3#~?2S+AjSjA4U!nnJ03T$T2qc3XxZjM^0j@j{L@C8HqQa5PcHfN4}U7D?;l% z4Bu|_?L>|@D_cf=tL{dB?IvWmHHbDC9r!_bBKHA9l+ZT1hby$Dkw0yb=G!7Hn7nZg zDmXVW%IM(C^>gY*cv-hO9SfMm3at|E;5qK1f@!?K3|`?LUSrl5o(wcG>JIC~xF@s4 YZw%vwG0k{TIlm#y0^+{ajQfcF0K4ceA^-pY literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class10/Code03_UnRecursiveTraversalBT$Node.class b/out/production/algorithmbasic2020/class10/Code03_UnRecursiveTraversalBT$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..a7544de23aa0a768e5209b2f3d710ed1f147d48d GIT binary patch literal 533 zcma)3O;5r=5Pb`U(pmxW6VZc46KITJJW4!BLL?!WC~`GRU13RWlkLa<@?cCn_yhb= z;w*ADT=wnEym>SG_WS4aYd%LChc+_EnlK#XkY^~*c*>hT4<^mK@l1FzL%uBo8DBGG z>y43x0xT1@gEcq|uIKY8x@a{!;j?I6K0OBa!b?;nQ!!LL6)NKX&G2MERfb&3{e+P9 z7z|&$koH-Bb%85VP;xS*HlyBaj0p5phEiV!VvxL!g&Oj)Pnk+T^teCbO6qu-G~%g@ zXnM+EKZJ?$L|1C^@xQyDYeN_c0};iyVHBI#XE`HQ#nWz}(t9%r}ZMsL)v?6_AEO3Km716z%-6v9-{m bK5P?%zK<%pZx?$DtfEF}Q>B0^4q*KPirsW3 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class10/Code03_UnRecursiveTraversalBT.class b/out/production/algorithmbasic2020/class10/Code03_UnRecursiveTraversalBT.class new file mode 100644 index 0000000000000000000000000000000000000000..4b3a042ff0024a93e7d8e881b0007440134abb3f GIT binary patch literal 3114 zcmb7GOH&kA6#g0p2F4~lZrgVBWmz52nOPVI3NOok0hp z&;LI7KA%SqZbwjp(lA0Q%22ML=DIeo#WR{Y9X~g9T~E0R%6kmcaC;S$wzf@Fq5_p+ zL{w~m`i%M5g5&CQw6b#C)R6QJGOYNBZJ6$uYwOxvq5>}|*pRjLeU_cp?PDzw)Sxzu zIu#pHuVCXEn-r8~L2QP#}f^6I?*-}Mx%miZ)46iGVw82OU*{mfKvI{tYQnc z(km^UUUh)s)?M(>dMi6r?8GjPvsP9?eQR5h6TuN->{ig8 z%4m+$wLd;!rS<&>uU;@m^;FJwjCpFP+X-=l;EC6 zZK4803M!5V{{+!FK~yhJoL4a_9+ViS498VmkYR{ux@2Nf#l^zJ0nUpasL-Tg>chFY zDcv5|rZSwVOIj%{GojgrjDyLLJ7X})d)Mb~g3+chQnLzb{m48`0j`B+bd9QSeD%=fQcIyZ%`oXn>y;t_t)wv5 zHG7({H?FZv-Hcf|JEfm8gteV7Os`I<160F$h`cB;!^ zN8rE>BPR(ruOR9b5U;Wr=DanlvyMoC@pJH$mU1ndMd9<}oCpm4L(gbtI-@($q-D+K zvWe$m7R@}fah&m3!@QV@HIgqlVnEAe#tc_yWqps7D=iAtLDSUj0Vzg0!H1;agz-Kz z<~fLKc^<|s1uwtYly8C$6FaE)64ouC9Mq!sdx@hsM+)1r_WMx2W~T&~10zo23j3;W zfH&|aN0pM*oRQ6c(^?Ll`Uc^;swGsnFJtr}8ZO;OQ!>`RgiVvNB{YAD<7`@fK=dpP z+wWn|1GEETe-E9@P-D_A;lL!@?&bWiGVYe~V*W?&Si({9EaZ9CjVku*__}SRXZ8Fv z@Zo4Az$Ua|6U*CX^l|14nsE->h+qdaJ`94Sk>1vmh_`Un!!(7r(ZzX5q5r09L%Q(butjgY;`KQ%j z56~@OH^J^#F*s+2;2(TAWFW~v#R|3A6 z|E0rI$W~s!o`|GKAB*`vS5wl@5)T|EB}YifQBrb@kxnqeJ*4C~VfJ#hkH04v>3$4j zfVw%&7@xrcaeauSM^OuL)kEh;w9rg#Ut>?ye7i^$zGB2m$nveGXeIinLFgasById3 zt$XA#$M+;)t~FrpP7!lA3e5S8DMLPIDK;kve5ga@kL~T!-bItNop(_kld+!;zsc0{ zvrAs)EasPZQ9ynXgB_IBSF1VfMK%3DM-E5G;d$~f%8VH!zHv(H0);g}<|fJAMe=e9 z1{u4>{Qro|d_pEgVm^OXAhBjl^V8+=cLy`8#3oh+v3aaDd#pvfwmf3CR`UGo0c(=w z5`)hkB6=xw9|Osl^vc-#7TsRI-0OG7$cZe4gQZ|tv9j7Jt2MrLH?94#Z{8XE4yPnA z$t4W4KT^~mE9y@a`cEsPufH_C)>(P3vARt2uelj2&LE@Lsi6$jF^5^0u=sfwS=_`s zl`1T|g$=%VJOPZA!c!EUx4=;yEuvKQ4eq>& J52)(R{{byZ(H;N* literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code01_LevelTraversalBT$Node.class b/out/production/algorithmbasic2020/class11/Code01_LevelTraversalBT$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..651118fc2c94061683b066e85d3850803e06b37e GIT binary patch literal 509 zcma)3O;5r=5PbuM(pmxW6Tui0Vt|9lS>izwB1wY>30Je!6-w4NX-of?2V>&FAK;G? zXOXMX%f6X6^X6+mzurGqEA((;BZI67!$A&tLU|!l(NQ9pb?&AM=_Q1G&ky|MnviX_ zCKd{?OxO;#;1C*~5^>z^cKYF?yzD->GL>o^iBv|hP&eboh7;yLxQ2?6IVTV z|0BI(ZRF49EHIkG)`UTKB9vS|kfY`ER7PVlRm@b}&=YDRB47I((n#ih%zaaWeIG6( zPY!&YT>oX>3%x#}Fp_a{8^(!=W5VellMwLTY25Q${VZN}JL51HUR{^UHwk(ve%ih6HHul!FSciS?!r#OZ Ttvkfg8mp)=+8imMiaM-s+)io$ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code01_LevelTraversalBT.class b/out/production/algorithmbasic2020/class11/Code01_LevelTraversalBT.class new file mode 100644 index 0000000000000000000000000000000000000000..ca23640dc03059412c905a3f24860941bdacc4b4 GIT binary patch literal 1574 zcma)6ZBr9h6n<_FMG^V?$k-e(0zj<*oQ~NBJ%3-CUVirag%dFlyjK z6Q?kC0Cst|6{s5XHrfO~5+!jP#rwWn56XeBWUZ7$7UL#9!Wn_Yj`TD#v6#YHOd2?6 z!h$W34j~@ANnlMK$Ey>FwP;s#q`Zmqn4-Z`-!SE*^F9E=8j2<^=$i@O-Q3~?vbd<{ zXs2)qmknGoaTT8kj2#h>0X*F#0o!`NwFsetj2xq&~Vu>x4v1jD}<-# zK~9h|YPnroSN@7z_h=b%8dd34r0;6IV~ht|ZcAYNsCr7ARJH9h{FaiWR^r=;XoJz< zLXw8uqhsb^qTS}3WHX1IXOBu7lBhJtpnc^)R=1aA^G)G3>2kUm>+5&;`EDDeze!-} z|2P&%l^bops_wYDFQflM;DRQWK<~0@1xrddlJU&NdR_Son)-@rT$3E*jGPY zZmx6GirfYFL~ak_F@+eebJfRso#$#s4!D7v)RLM=wCKw(^&f-#TJ8_TA3uY!x`(8b z&pkydhOhEZF(B|A<|qscyg+v82b?_rBThfT1h?GpIF{FY>uQ%X!{9%_=Pvuz;zs32XG4 zqP-7GxQ#nR^BFabGqT*Jv`9-DiNq`P8|Zz7f`RN`7>uz2pEE(!fZte-?yC0;+12~9rv-gF5P9e59qEyKA^$TzX77e(o}l!0NI9gK z`z$M(WGl`Qu*IK%&35H*4|zN!$SPrPbISAd%tW=qA#6R!YS;$88Z1+f@y>njabnBj N0i{$ZUBZ`0z6MSfUUC2c literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code02_SerializeAndReconstructTree$Node.class b/out/production/algorithmbasic2020/class11/Code02_SerializeAndReconstructTree$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..02dfa8fbff615ebab25c15ef40ab4a638406091d GIT binary patch literal 556 zcmb7B%TB^T6g>mQ(pmxWiHOF;L||dXt;EET5J?CoLfD$2j4-6ONjqiXU%4Dic`$MBMl<0lhP9>)q`GEE zS8GEHSy(1)2kUScT+iom+-SJ1a4aq^ANnGa+?UVdCK%rfFAQQ8C7v2YLY(%9!jPGB zKOtlt2E!MR)S%J*XO$}|6UoVxv_`d48xrXL4Ee4ML@#+7iD z6LK~MAPuIyr5nQra!bswkoHD_@|%=x6I=7``Wsli{0j4hq7;gB=BNr#fq^4fIK~!5 iyFYAfFKdwwJJf}Km0q-N5Bp0jp-gDgOBN*@!ukea@_rit literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code02_SerializeAndReconstructTree.class b/out/production/algorithmbasic2020/class11/Code02_SerializeAndReconstructTree.class new file mode 100644 index 0000000000000000000000000000000000000000..82440dd6578e82b5732ff496a6194f0be8456182 GIT binary patch literal 7992 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree$Codec.class b/out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree$Codec.class new file mode 100644 index 0000000000000000000000000000000000000000..502d534a71688201708cdcb5f920bdb7ad122a8c GIT binary patch literal 2759 zcmbVOYf~Fl7=BJJyCf_$r4$X-8ikfz2;tU?gi;EHHZ}>ZKq`2_C2V19OgfvTmY?D; z;A9anHw#ejw= zVgj9S!zVY>HZ0w)SOPuKSQGS&JDzSw0)r}&8itS(=sLDgUm~Dx>D9dPf*={pRk>qC z!zjjxz3dEk*KIeYfWz^chU=1}-!eD1Y{~k(l=Nc_6G&5186-;DdR*(7k!~jAhAMdhwf_{>)|Xw`-N_cZ!msC~nK#eOsuV zXLYe=PK0^#v_PgPTVT=LEbI2R#gM!>S>I={ct$N19>-3ioGN-v1<`s0-58K;>wB6U z9oLX7pED>V5L~QmTSa5ulyz`bCh-4WRzuPykF&f{weMG|wu-L>Vl9Ig&@$z+Va>|R z(O`A?osyx!Ix8lm6a^8UPHg~0C?qdb_Wb;B$2~hx!BGJh;!N z!ZpAEGJN*bR^byo;2YOF)_4~oi=1ogJ9zmAL=vyz7cURdv6A=+=k{?iHyCH{-B);T z50Sx_T;p{-^f+kZ@bL&%kVF>`?aN3x9wRkd4UZAzu|Q8<=)^C+|r$n!C#}H>090iseESKdSPL>|d)mZw-bBQ~=Sf&k)b0o)A1@@!@m*9H?O+|V6Ch293_UIwPm1>*(7LB)}#3+e1fI`gp|J;d#mecZ_awx6;}pa)jp@8FF4`Bm-xzQ*PyfQ<+z6`uCw34w#cm^wi^ii3k1NR AF8}}l literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree$Node.class b/out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..356babf4cc475115517d2a64025216827fe31778 GIT binary patch literal 983 zcmbV~O>fgc5Qg7P+$J_ANlghK<*QIo5}~G5kBNF{MMR`192(^sZQND6t#Od;RO-*- zP$6;P2k@gP?~v=}$k7O)}8qh?bx?33W8oiIx9_(aDZ&s<3t2N~}}s)`t|M*~qK4 z?v3VK;&n&Y!&iT=fBxxL51l`9|6_2e<{eC?NoYD&#(neGH`|oQ;QRDVn!TT-SphE< z>i>M@3Vt_^O|maLVt9#;>;TsJ^f`c^k|mD!GAJZqyQ%cD!UojhRFK}1Dc}RN!ks!_?#$`(-wj=Nt^Rz2?c>yO1YrKUVo-k@Y fj93C%=J)cHna}9U;W;TH*YS$dV literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree$TreeNode.class b/out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree$TreeNode.class new file mode 100644 index 0000000000000000000000000000000000000000..81486cefea4eeff056b2d1d2aa5755563ecddf4c GIT binary patch literal 559 zcmb7B%TB^T6g>llKCFQFM0DXJ23UxwJBbU4L=sXL61HZjBMhl+(iWnh<-(Y_@B{oP z@lM6Hx|n(_&^aASsSQ~EMKXGmA7 zeG>*u9hQv+*bK+6$D^pxsJDVUaddKf>AR#jJbdbfLiBCg3jyd{ z6ZbUXwEO=yXAGH84o6h3RXWu^f!cu~-<7^_CJzG<_V~afPq7=g-0SmDDtqqK;*pGK zi$@0QCYXe-XiJrR@arXqiXsNX5m9^Q;ya#H}( z^oU-Pz#?)9<`ZP3XHWpc5@~J9R{2)#6|7c%f&NTZ3PqB+q{|L8?83wzmdUsFosE@w bPYbIwg+7ELs%{+{36@YMv?yYrge{m~|FC`n literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree.class b/out/production/algorithmbasic2020/class11/Code03_EncodeNaryTreeToBinaryTree.class new file mode 100644 index 0000000000000000000000000000000000000000..e0e0e5437abc54942104822311e7327ad9398491 GIT binary patch literal 602 zcma)3O-lno41H<4oqlO+YyGGvLBuL_tsX5NEDAzh50+kKx(;^AIt#m7!Jp+x@Zb;d zM_DsVJ-aiIb_xFH;qb}JGiiURZiYMfxEf7k7S$Wbn5c?3kQG19l@04Yk zk(*+`IsO2>vm=KJOZyC_R9V(i+hM)ND35iPIn>c$U1Gd}7TVZm)Jc)R4%;ne?{bMY H>ki7lIn>uy_`eVP?S1?od4^p^CHAPHhY;%kiSq$Ard%#K1otA_}B=m+$p zvOAlP5xwl$d+s@B=HB`IdjD7~(8Pg@6w)><4;f?`3R6Dk^?--t`t5Kke9e$;%24Vn zhIFMmaFByz!}YKNkKx!4cpNtx^;R?z=NAumN{0GchFm@Ol@KRAq8T!C9?S??hrtTO zBZZ!J|KYqOtCHgh>8(nqIv_CTFyy;36usHgP^dm12E-J*kzgRnHue|}|Gp}N*9k+RT4oi(oM)!S5p603APr`A zMSl#dSW7U!M4Ar;;@637liKLr+8bD{{0jSpsuYU!U85B0z@j9FvNovN{!wEy$uiw7 X>d-4u$M|-zn_vm$#7k45gnc;Q$uDXq literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code04_PrintBinaryTree.class b/out/production/algorithmbasic2020/class11/Code04_PrintBinaryTree.class new file mode 100644 index 0000000000000000000000000000000000000000..398473a929996f67dff8b16943063ed7e0255746 GIT binary patch literal 2975 zcma)8+fy4=9R3cuY(lpMQtrs5Ezl5uO4Nw8;)Y{7u7P1gFakD}3)~fYd zeRUikeQ|uVPD?ADamFV{#|K}1cKieEqYtg$*-Z_YOl2~&=bYd9o$vSkZs+8ehZ{dU zdW2*6tQ=+VDDbNA!7os`q^)XwDa~B$o19zH6Sjc=m|+_B2?0;IYc_}gf(pu2?0~vO zeR?fx>nqes=Xj_l?f@C-zH^pg+S9hBYb((Jb_uA%hN)R=Z8MgxA1y~EsuYA&>_)Y~ z?h>a2l#IkknS>3yxDG*r8s=iOYc_yd0WnsNdNe3#RMCW|1X>a)Et?$}=o?AT>-~dQ z93rl5X_`bF*qAwK&FhxHv2gs!C)y_n6pa-#h;_|MKU$;{{vg`0N5Nhd`_L}1ZyT5b zKFe54GHe~&q7XnQ{auxo!YaBDA;7AZ%F!ng3jyd+@ick`>Q=O6eI#urH2b_^CppX7 znrUYRj+6*w3D3HUoh?T{1{54n@eBsHR)CWa7EDSv7wx1|Ffo~wAr*&kSRk;d+tV2> zL7p|?SP5*&{ix&~6*yahVKJLxNl93N;}Vude0W>1B|v1fPpNoTCe@qL7wiB=81Ksg zoZ-->;5mWXLif1EIhT*yTba|X8Eq~_NhqF9XsKDvGUPfh^x8>- zmD%<`Ex^+7CUuPw^Cxw;Ys&1j#4I?IzZqD8EJc3V98S{Aad(Kj!<4|zXWk3xnIO`NX3$7&_+pU`?Gkdm$o* zxtdz!#eWg!<+X zxX(*;bHU~zMzmCF+OTy#7w<6}LWls~7bxQdYRoisYee4cI-}r~SF(bSd2<%|TFM0l zH~BC;S(Sz5`inhmfim_3*gPx<`1!rcRUbz-G<=b}5VtrfgT}AiX7gZ-wkp^mX?AmK)| z@+s~ly)?Jlw+J$vkqJO9_6$6I-CN-iDcyphMpX`|3K3#>ix0t~V`YT2uM`G@5I1~AO; z6#uj=uu_&V#GD+$H5SNC7W$Vsif<6b_bl;WSyR8^B!0&!{K@zJFATG2;#+>}ux(UN7UZu^T=y58U_Yz*?x(sW0ouh2{HoU>vF3R5I>Rso110PTpqO6To O@*x?2gir7(8vX%k0mjGx literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code05_TreeMaxWidth$Node.class b/out/production/algorithmbasic2020/class11/Code05_TreeMaxWidth$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..873b3edd066525c76be0893cc1c70b9137007197 GIT binary patch literal 496 zcmah`O;5r=5PbuM(pmxW3q%t&9)N?$!IQ)b36TWxAi<+q$^uJjo3w@aw>%gV5B>mu zlsJnVjb7&Mym@bCXZQ2#{bRXA6Gt`@NSZJlq>v`$XJR4hp71C2yWvc_F(KVlzKX92 z$x3x#Ap^^V?O+2A;n?*=6g3+4Rxpwmmyi8W%3JaLphofZtj8Q7wGiH%kvas!lVk39 z+WpUV#lBEYrYtrpo$7!=Pax#F%9p+Q(@=(eG4z-zbOTp-0}(2nuSp}Gs)$V^5etHS zAIw8nww2Zwf4Su*zK9Dd%O)1I|EgKeynZVVYR=(>%9gNf@l?nt36m(3xFz}a?a59`|6o&xiR zmw8W&pNtw3Z;AMU4{DTaVoXdl@gMMmAN1eQsPlQxIb($^=n_uf%kTO;zu)iW=YMW} zH$RUdyd8oMiUw7O9|3{JbH;fio;M2F_@Rk&=A)u3A8vuRolwP zQ&wTxoJv_0I|L0%J?f!rXwb0?%LSG%3LdGNRg*T1sVRYQG}ROdA)ESyOgyU4~~eDY{i8DZW$OQUO3{}o6=YHiW6RciUmRyIe%AHg;akLnmi zLSWe}0f#=C*q z5$x8n2YXqsWuq`voN&V~`YihymQAdB* z=$J(Nf4U#W5gkV{N*tKBL*U~Ta#<4SivD-}E<%s%7?&m*7EEM{v=GD-IIiJ@jwf;Q zt_~fYt=Ohav?z-?>{hN-j2|wO@lm^M8Z(JHoFWN_ils_t2xnkun9wl^HsK0~u)D=s z%_XUvFWl3lv}P5uiSF?_u)(ym90`?NC!v&;%SPuMFf-Me39~$AOyqgeoGMNl`EjFc z$-Q@|+BvHt&~ZONSW3!dmHn*qD|;Yio;TS=B1vyK(_rNOr`=)Fyqrt5iGO z64F@1sBKJ6Gcym&0HfbqARJo3yl6YCIu?$Xn_PNL?{^>}dNYPaUR$G2)_Ax>ED^RS zW0bQ*V#N|70zuoX*kjg=S<&!{KxnjBEl-;JEXnuEB}UjrSz!Y88LFjCSsXO2CkyQE z-E#0r%vFg!I@yOlr%wYQzmVT7_i_FT{`zCrA->|mhaA818hmdoesxy>=P=D(P&Oe? zs4RYiiaMVC82br+WSS%$cJOM(a3#sx;LiYz=~^#98*V>0aY3B_uNE> zz=xRQf;Ij|YS-zgMW= z6$)z|A0s%YiYsUi`@;-nV8B182z5ZcGCzCgB<#P+OjIZPb73MBYEwOT3VYF@abd68$cyn6^*V4m+@Ktq>?dJT<2kn_K>j|XC1{U2E7 zBiS669@#HYQHJ#D(qzZdB6BynCu_*{=nUV>UOeM*=-zmgIcJ$Uzla2SKSxto4f`c) zvU2*;SLQzntBYKnB0u2cq+%Pf8)Uu-<~>BlhRN6nnc7ZQLKZM{8D;GRgR+6!2$dr#hr|~RT z3O(l>E>!wA9e!L^WIruqjgZ zm$%V%ocmR;Prq{=`!juQ>Y4Uc^z|*`HS7L9>05ESrj541Cv-VZq6w#%^=b6-Mcf9% zi6`cI!V6wJgHB}3k|@c@eAH-jkX0O1RQUKm+#s2F(TnyM%19r>jiI5&so~~>a-4+K zj!)4gV@nPCBP^7|@-y}k>c7UZ=BKXVwCw%)U**o^P7XOY;21(&o7|nH*(_b<(9BRH z9ChnS<3{ecFt8y~B?sXMr6L>&vL*c-i&4D9TM6GVOXU^E?m|)lmZY0hkT&Kh=O)zx oWuB^j4X?7_n0)7-w58xRYWwgy-r%pwbi42-S0QILjJFW{7x>1cv;Y7A literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code06_SuccessorNode$Node.class b/out/production/algorithmbasic2020/class11/Code06_SuccessorNode$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..177beee3807a46d256912fa2d1d68cc09335e6a5 GIT binary patch literal 517 zcmah_%TB^j5IsW+rKJMmlZPfm7r;Vf<3{3!gh)bgfnjSd!^& zV(88nYJq1FN}nCQF=$R0)G$I}==yTBdYa1cUQ9jCl!k#Lyom^16>pPzyl^8X%|t8+ z);L&&j_kXtzx>_|rOZ4kuuz(6+UBPBYiy^D7VZtS#UlHB7@E6Yxf&%e4rgRzXlj9aMp?Y)&f_ zhKAx3)~Y^u<)ch7o7D>iD?i6`kNgPKm9n zf^#Z5(RGB!%ud19H%XsWB+8bQ!?0n+7xIQ_XY9PLZ6;*=ZWTS~C12ZGu1MZQQnGPD zMMP2&Vy#EmZ357*B8CBh)=h0gpRmlVW`AJV>)aJ=&9n;w;YczWbyGT*%6x{oMxHMr zu3%8b5QYVsD_{~(wj{!wNzjqwA)?C?!H7g~S>S3Uc>-oDAR&G7?Fclc3{#&gZm#J0 zC2b`~NmI(oYPn@CZ^&~==(E=i)^)aOwgjV^PSpC0tz|dT+Sb1Nre?69aO7U4is+{0 z*BHLJf||;8U0da1>+-z?GgdL5)h7*!wXISET#~f%na{eoP0E#EgPj$!1ER=dcS6bKBa`TEpU+WYCYSJ|I z{Dd49Iyvyk$)I3Sp!Zm%l?qU>#4E3E%3gJ=MHkz~!?y|ez;=S4-zz-DxeBf|{VyTD z;l_h^`ITzGi>v&qt^wY|HJ)l^>ro<|Kc}?}I^6#~13c+}2IURvZh(J8)!!qu1we_zOM-ffk13s4RiJ$5j^7dH^!)f(*|--ut8f5J{M{fJFIlo=AF# zq?eg4lyT5nmd^)|zk!LaW6VwD?W3oc1Wtd8z=t9KOSGk8;yIdQ@+^eMf^YXV`}Rk6?$3O?zhP8(aa}ZHOmyL=1`xEn?Q&{kXao00|Mb8K_o+&Ij zozm&{0B#T&5cG`Umh4s$73VO{orhgAL5&BuafhoMM*&Q77vOG+|7pzg)I^H_ht>jn L>@G5RA8r2t1G_+Z literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class11/Code07_PaperFolding.class b/out/production/algorithmbasic2020/class11/Code07_PaperFolding.class new file mode 100644 index 0000000000000000000000000000000000000000..99683a4d7ccf6da200d7cc8837cff97840d91f24 GIT binary patch literal 974 zcmaJ<-A)rh6#k~W?Y4CbrG)}5Nbz@zO2I!aAR0qL(xf6uO)v05hqA%N?QXMOG(Lfk zV7xc+8ZQvN@Bw@eUqk$6+C(vpo9xV)Ip=&oXZOdiZ{N?(uz|HK5-=>7Hj+pQO8zO zuMzgSTes)?l8@keCL&T z3|!-C4+?M{4o?|1T;8bWhpbR_IkRk@!upKd35tI}#+X)6DOdza{{@yq4NDq~f8!AB zJ*!o{Q?7i3d0aMMRED5)ACNB0d_uBNKEa$y7-UmCh89~U1CXby2}VW!tCLv36a|+w zXLW#!8=8|0nq3KZa1*y^d71Gvj8x0QnxK>O-1vT2Bo-zyKG5NpK`6{eNUh7{|10|u*?7e literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class12/Code01_IsCBT$Info.class b/out/production/algorithmbasic2020/class12/Code01_IsCBT$Info.class new file mode 100644 index 0000000000000000000000000000000000000000..edf13c4e320bcb049e3253da7eeea39c2c466bbb GIT binary patch literal 545 zcmZ`#%TB^j5IsW+g$F&`*-%lZG4Li=*Q^FL9fe>p=2S^u zDve?mEG%M)g+n19hTMrf2K&99chDv1%91eGmXYX;pZa2S>-R%u7Ta;)hh2Xp6`qoM zI+O{a+WvQ-Q??vr^Jqa|H5(Gln|M45L`y2)h2J|Isyh&h9g(D0agrLS6YRgt36>W{ zV&tkz2%bS#>!Z#K<^X6Qbt=wymucj!Gt9?;&HOT>kkvXz+j#{!)d>uzHo>g3F~R%` z^Es^Wzrqzjla($?xIh_~?A5|5v(8UF)=*)@PFUxDlx0=U)HF6~tk?K$Fv?*QTUp%3 N4o8#KMQmdirEgI&VKe{$ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class12/Code01_IsCBT$Node.class b/out/production/algorithmbasic2020/class12/Code01_IsCBT$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..43e3a4d343e1ded5b9ed197675ec9b6f1f91ee6f GIT binary patch literal 468 zcmZ`#O;5r=5PbuM(pvcvKM*~bcmNJoyh=PsLTp0tAmM73vci(uCT-z=c`zm(`~m(b zaTYmv(96DkGw;33%;(qp$9jz}PHkk6HDNf&Ax|hT#7ek<2xsp7WFh^OkngHcr8k6Z zvo*F*fMvpVumgus_XCk6oh!E&P32|h(Mx)_qw^sXLT)93B_nwRBalxV)foJ%zh*c=PF^-RHTAnKSayemwl!6 zmEXf%=miOdp-j@dC`nBm6Ka2rMR2?@lyOh5D0Q~p3uk~XBeDdG23Hy@S{d;lf^#lvx2YB9ql{B(FW^i MFxuQHppFw*-)~V^M*si- literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class12/Code01_IsCBT.class b/out/production/algorithmbasic2020/class12/Code01_IsCBT.class new file mode 100644 index 0000000000000000000000000000000000000000..f2b068cedc84d4c4047630543775f8166558fb93 GIT binary patch literal 2853 zcmaJ@+fx&F6#jn6hE2i>atn6>t2BU!_X|O^TCvf93KkW-u)qSVA;BbAwYApP)@f_) zO#4zgovF3c@x@NnvBK0Dr+v|xKJ>9Ked*uPnM%L28x$=X!v1dOch32~bJ_g<_?HK> zvuMLdL3rTRp&9TYM`7^^^R(F#Hxr{Rdk0TgLm7pfHalTw+7-OvhF%?hgombbJj87oD>-- zMu~zpk&MS_F5K{c9Xd)C%7@}+I=y;L%Z}u*wQBY8XnM!?1IxO&2q1)V0~M&Gnz%JW z9F?&bN=HPz+Q1SK_oeL7F~X@uosOjjUcoZ@u+UxlK9NceS?RRGrtnMDH!OS>O^hUI zx*o6U2pecXz#Ys?Z1l#B+k7VC7Z zH?RR474n`2qtncck@Io$3^j+N(T1p~*leIx{K&D>9h336(9mXJ3mAX@sFko%X2w#e zrF`@SsD%EAnB8XJHEgGqvSnY&PGovADa#y>_|Z>F_a-OObwM1(F&)PZ48T+hk_=(*w+xwvJHFr!$IDkXBy*g88gXK(F- z3fdMl@04n!o!S@mWXz$Ho#sT=YjueECUxs({tIf?DIkS_Q?ah3pZOfKPFr+SroCod zQ2FBSmNstMq&XDspVv{I@JwVjftsmN5>~W;2u)?Ibmo9PZl!gcR|xhbCsRXKhb{CM z%k#Ov__Uk%p&y<`Am-hox>T#y)OZiU zgH894_cgjX6#k0Pp2oW<>*AxTRjZnU(fkMn<=P`>5-isq!sor&{1AbrX1OaH!KQLe z=G^sDa`uk4<;Luf+D)3(99O&9&4EI$is*I;@=(goU&ftsuGpgaw-i-qL^aVa!FtrN z0o0=tVeDsDJcuS7!3qpvCE}Dgg*6WBbuKj6ybo%%Z~`X@d@&{C)aIcD6XQJf(#|m? zIMa}%tPtkPPjGgMJ4+DAnWdjT9U&dMa)uC4?^l6bzeZBo9$ZopQKZqeLbZQvSmD9$xizWlVz)l@Kd*S#sumuMxvYH|MwEgdM}d^c&?gM0?J6kQB- zH=5aNJJC;ik8pOBv*V;`5SK{iWsKrFgZcx*_<*7N4U-O??Ie~=A?1X=6w^o}Lmq4J z6D2YXeKWq3cOhx+#6@|f(e6IHD=%5{ECDEmp8puFI_mjV+tk0vSE{MHl0o6?#|;W1 zR3KHUYZa9@zkCgh6XH0{Yp$6K7SS;%`ctBB0d1E95{@_Q_r!Pa8z`05+@ z)UEpn9p<{~^2w{y*xA)wp$$|r(2<`}Hg8_l{FKQG2mJ-I_#QcZpN-=Kmd7P*!iSDO zf|ZtVChJeD47d5)77uSJe50M2RH9X1 z$8vEk+UhI!&7e~r`@co*9ULg^yN4r}G<9S4FIf$8b({Cyf@nmL^N*?X6LSA4{J28D zKVu8Hisks6vAV*a3ty1zFP}uWj3q0D?L#ixz}rM3nA-3T&U5q-iLfn=a$^>gAL|%j yiMT|!7~WZ4Wj$X|`~Y?TP}WPvYls0Lr@wZ$M6BmAf zAEnL(7cMk6xo75N=FFV=_6#2= zaz@a%w%ZmmuuNoaOu#0TdcKI`z5QxEy!CeXZ`}C2+1hl2yO5BQDj`ruHBH%=Mvg@W z;+Z*DaWgh%$D9m!&Q`~Dx7!3mi4mq7GVrb*2VE~}iLTGgOe5?GzbzuE@*mPj9%M`? zH~wAal;=r;HW2FLDBBDlqn>vmm1zF=>O0ClA#>%$$z>QPCe{drzmy5K8w6fdR|oKT z0YkaQ8r#wU=pc0=j@SrtBV?~5x@~h K&R`WAu)YE1d|iqF literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class12/Code02_IsBST$Node.class b/out/production/algorithmbasic2020/class12/Code02_IsBST$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..05de0a2ad6616ef0cf691eeb6efa087120825315 GIT binary patch literal 468 zcmZ`#O;5r=5PbuM(pvcvKM*~bZ~zXXTqPbPAvPg+fN(WSSz$?SleX}`JQx!X{s4cJ zIEx%S=w;u&nfG31=JV_QW3xdQ=QdJEn=l+?kR=qCVlCRf2iHs$uRHBtIFnbMM>oD3jq5`ugv?s_D@Jk&hA*Eusy6snf5V1I z%@?dP8g6sKpfd@DfePes^*oi)SWJDcln0?F{E3K^=DVViEL6;IDh8p^TIJFiuRI5-NX)o5emHvVyPA9ql{D$rh`q MG1}b8p^7tD-?*_@ivR!s literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class12/Code02_IsBST.class b/out/production/algorithmbasic2020/class12/Code02_IsBST.class new file mode 100644 index 0000000000000000000000000000000000000000..be2bfde3d9fb9502c894496d4792a73e17ddfa1c GIT binary patch literal 3024 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 PH^mz2sh10(hJ9GyD@$P^ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class12/Code03_IsBalanced.class b/out/production/algorithmbasic2020/class12/Code03_IsBalanced.class new file mode 100644 index 0000000000000000000000000000000000000000..136058538dd65c87a0350c13bf05053018dcc40e GIT binary patch literal 2540 zcmah~T~ixn6n-|lVK-q35DKMywOFD_C`}8LwuI6aYHe(wA4yXSYP*DmY#S0xLaq1C zc;~e`&gfWYyy-=Cs%5O>tuy`rZ@lq$IHUNS-R*$dLLmE|_uX@zbIx4Fye8PQ__VD^TN!LKp@@I>IKJVJbLK zEL-*Z@zK<5b=f{Pb~{s_v1nYhmlYW6wQAAkTLrOr_N9tL^E6E_E+jG`M9`|E%|tt* z3I=vJQJ|IW6~=dHFKofxXQER;gEeQh)Cglgx^)~d(Su$Ek?o}CtVW5MT1$1}$1{nH zsP>x}z(F3bSq}&i&$#CX22H$z!wPgiQw1}7CYsnK+Dv7onhqg`S9QE*B96qaEQq>- zu(N}6Wg$%SVJYSjiF6^8Cb$4Aa{s zNViFghHKVgzSC2^ebh%BgRojE5?&zU%n83panonCkC zXL5N3L&ELe&JA2J@j5OlXx`4AeRg!*O_&@#i^#Q)|^Ts*QnXnTH3%h@_nVcULOo2hrEs(CJMNzpyLJVZp+ZPTp?cE z19WGOXijA{ohTT%MWq!^UcEF(24%h!v}T=(J-@NGWY_Z6Qkf^wY_({W3s%jMy?>}R zN)G$C_vJ*U30bl&PN`~Ds2W&YU?<5uUGf{G*&USUyOvzTD&Cv3)_o5O=fDtkuLpM< zLAR+Dgj_sN-QXN$?fZ6_AQTH$d4s70%ifW;W;x`gE57(5V%WM4gSTp{47=k6Dsy5m#X4iGBGp$^8qgJ#pI>J}i|1PSdQXe+bJdNgTp_agArow@kmCMcMR+FaZBH?3@ z4HR&D+yJ9S6Q2v*r?@IygUP2*zNHYrBA@aaQ1LdOrl){+@Gf^DX`}&tR(WQM2eOOiVef^v0)9y$Fs+-FIbjte?MmLdr zc%}C8X6)ll)sG`M=th(D{P@w(qaRHt-!I`9V;w*jij-6=6Dt} z72=HKCJsHp&^8Sop@(-6YWU7Vavgj2G}Txez+$Q`&k(z%sZWu7EGZK(D;aa08-9Y3 zBmBCFPHPhy4~9NNlRBaC*q5Fw`P|4$LG0A}1(HrYb|%n5`8XYqvIgVK@&t38ATuY~ z9H%Iq=3g4;_`5rcX>r?-#3zDLUrxnpFT zuO4CnSJ8@V?C2a0Arn2E4Ag(}v$ z2AGMkE!W6NKPQ7+zsEB#r+rYjXv*T&6n=ogKdGyt?pimn!L^AvF?QU2%2CP@M)p2= Jh;e;@&_4-M=1u?r literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class12/Code04_IsFull$Info.class b/out/production/algorithmbasic2020/class12/Code04_IsFull$Info.class new file mode 100644 index 0000000000000000000000000000000000000000..367f2dd08eedadf46bb522baa5052428f23d3ab3 GIT binary patch literal 489 zcmZ`#O;5r=5Pb`U(pmvg`~dt)JOBq##FNAe39$*mgNDSDS;|UF>NaVM|H}h0@!${e zM~SnQi-{g~-ppj*n|bs3_5QJ3qKiWlDWr917Ba{(6leT}w|p+At=sWTI59)E>q#%Z zW=Pi?BLg`YI!p^|uox+Tj1mS2WS3CmGDU zU>-W6?!>l5|5RnLY$-+9Q)bobnlgxEGL-`8F?9{f$i)iD z9*R_NQ1?Ndn6S`%18Y_n(3`ad)?X89iDC&F#WuwY80a96OKei-=!b?al&K;CY?C}o avK`8l>@HO)?4goi75juH{mG$<0~p`bxLe}@ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class12/Code04_IsFull$Node.class b/out/production/algorithmbasic2020/class12/Code04_IsFull$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..922c0c65bc46c48be93642d31173f0417de4d4d0 GIT binary patch literal 472 zcmZ`$O;5r=6r2Zz(pm*kR6abIcmNKf#+$?o39$*mgNCbF$_gcGoAiVK<-wSE@CW## z#J81;iC%X0y*D#?v-|n={;^)8k7FA-?O+QIq2VbJ#}}8qK{%7=SC4KyOqDtvb44hugi0C7B^XLRu~%#Kzu=k` zkw0HB&1k!w34?Yelt+Fb$LaG_Mh{}DxKka4o=_7J`MTaTjb!1+ESiZ#5bXOfjXXK@ zGybpj&U8jXX)NR9HjEP!4MOeD#R!fY1Tq@vm{PmzXgJ|l$N|WM^gHm4u#KGz%Nyi0 zsBnLmyF+GczTJHTb(^m+U%1Ml%I6Nd@B{`sS?smP)xi%N`^M6^L2&bm{WG@6AD^#a6W<%!UiHH8eu9# z^F^yxJ8^ROd}Y}_K5{2pyR=a(DyV`&UoyAr+r%{YW(Kq3s@X(~_)+CB+R$#G!$c>d z3h}*774)LLLSj8{@-P1OndlN{fvU4ws7DY-w}BoL2hgj~{4&xht4_XJ$$G%O$!yl+ z)^B0}Zz&k-)k@y3)fCcij%W`$+44#y6Gj4u3>-G`Hj;aWCtE3a!4|$$B`anr6Gy}* zP^NCoR{}$ltYbb`HzmhSoWMzi(5hXwt5)4s7+@gT!96&+DG)(MOuU2B#H?E7=`bEMw1BY>n8S62j$O99l|bWSnf{WVL-(N2n^RuR49(?dgrul3ks%mWq7Ro~z`o;=EOLWbHrH>jj53wr_XgBmo86T2^S9 zty}rKQ`Wj~r&)5~_Bso0@v$!C#CX*eb`OI$53%HP_I;ZUWIAsZH%Ko~^d9LY%VDgs zO7etHZHlsAY%l1zsc1wN5wIa+JyR!lLjpCF0TO%w|F zoCMLqp4iD%)P?EyT;XG`;lAO?Cr~Rp9?vtOKH>8SwBX-}DK$yCq^J5+uJgT6jtdp- zN$MF|$%aFW!xr}Ii!WI;yGZ-VB2E@PJA#b+=z^p{1qspe0%F#O=-LU<Jb@`+`B-lQmw98D&IqfoQpoLeOnj5u_h8AJFf>odG zZ;Vnf#zJGQ%j4~16WVD#svr0UhlJXAIr>2DhHRumOc0xY9Nhc`n4csH{E2#F zaInU)fsu&X(t6JLF@-RKyL{%w)Cp~yrU3&*#S0ktlY2FkT<{9 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class12/Code05_MaxSubBSTSize$Info.class b/out/production/algorithmbasic2020/class12/Code05_MaxSubBSTSize$Info.class new file mode 100644 index 0000000000000000000000000000000000000000..6f73bc60a9437a72040322b8921584edfeb2d87b GIT binary patch literal 629 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 T`-<3KVF?vRn_n_0;Q-b*i2`G3 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class12/Code06_MaxDistance.class b/out/production/algorithmbasic2020/class12/Code06_MaxDistance.class new file mode 100644 index 0000000000000000000000000000000000000000..cb913ac71ca08f4e88ed3b49833de86f7c7e3bcd GIT binary patch literal 5237 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class13/Code01_IsCBT$Info.class b/out/production/algorithmbasic2020/class13/Code01_IsCBT$Info.class new file mode 100644 index 0000000000000000000000000000000000000000..3444a6d2a59278165eb7ffa4edfc3e4c4f49b7a1 GIT binary patch literal 545 zcmZ`$%TB^j5IxgY3bi64KJhIJ=t3keeMS;v6QT^yBmGeLThyY8Eu;CJY->$Pr49-m}*Xy=c(9?mr4YBjk=`B(oEO zUT<^@$fIDwvM~*tu;Pbanzjy_?f72ox9;4ueSTYWqlcJvGQAjvA%S{IRkSgyBvVq= zC}z$^8S`8i2ssG26S)lPy`J0X5)5TYnC-|&Tn(T4BDwYYAv5Jp?0aF?OQga-q>%+O zB~&~A4s^(t50iOxzpt7F1nVXqCce0k%6IPf4twejg#49Av&%TmOl%V>f0+|(H;P2k zR+kVwgQ3>PHZQ0F&_U`{obfI{k++^;J_ahxFE9$Z+Td7mUO`TE1k+g?Va8b>q4dJM zhDClCSpoiS298m{35qynuQMz$>wN36j1@-ggjMcGldQ^_nx=v^uGjfnXQW{Ro0GVO O9gY@P=dp!d6utmTeqk8^ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class13/Code01_IsCBT$Node.class b/out/production/algorithmbasic2020/class13/Code01_IsCBT$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..e2c8038f44408f3cac7846608daaf65c62c4cf7d GIT binary patch literal 468 zcmZ`#O;5r=5PbuM(pvcvKM*~bcmNJo;!)y35@HjA2MJfRlogiLHfan0%Y!lT;1BRe ziL=PTgI@OSn|beLWacU!jtO>(G4tYX(Ay&c-L^yNrCkyGPgnU`8x*v!n>0G(JXeuu|k6zNd9i0!E5OOOKEE&lo7=e7^sK(%5{WTk6 zHJh`_XnL(NgU%$B1}c=pVgUs3tDA>0S1;`++D2nez9%R zq?gCqG^uGHe5fXBtdg2EO`2$8($_w;Fa0~3RQjEnrJ@Cw-TB?l?_9p`oHIOr^3%^t zOK8W(0p!4=Lo?t-uEP3h^OD&THxrXBCr78Pv5Z1)yPdEz9SWXs!=MhILWv_ZpRwaD zF*`A1jmPYCCIB5CdE^-|u#V#9__#u8IQG2CNW-wm6&P5LLIvGUAD*4dEI0<7lVSrU zC{@trlJPjrg&Y2_L&pY%&{*6|r+2otbSKBH9Xl^X)7@PITY9K{7j!gzOV+(y)?Jj+vOC`swbXsA5_yy`4RzHg-CXzH= zkF7ew1{%<~R!AaA&uocLK@p{TY!k|w$xnEAINC5MdRh$Zz)o&WSrP*!qXD#Hw~jpq z_F|tx{!=n~%*+%qpEWO2b2u7ph>D7r477P}8^6#6p5?0F0SPC_i zkFF7wz#kE_od#Y;7geRq#CUSn;rCGP!N1^q0)+gCgm9D$g&BYc1znwD@3?^zh$$2< z+v{`gcl9&$YH@URG_!VV&}-l%PB|eEF2b?#h1?L#8uS_He|l$^AFqJ9e#XG77<#5E z`WMm}OJYgR6W>xdG3{i_sg#|_^k-6*IUDieEFnFaoJ-dR@EXqRxL{xerb4j;|Fhyw z7V&aC@m#e~o1K`9Gz|JMMxhCoVS1{TXi2s!6tMQJ-uc;4D>Yz_#<^1zOOBcGK{I8` zI=iW5rflYCa8=ME)HY?AtW)pBd260Jf^J056}QO6Epvhy#e!5Rk$cA0!rZdG)>Rd> zuWH^Y)kp`muj|j4V>3PGT-IyFr1VMMx|zR5?K%ad;CCw4mGm*6W7Z{$Zpw7fj7wDB zxVxpznl@n$hR?3(DF5Ni$ZQ5`rX~qk@hT!Tm9f&90ejX;>v&rs(4U-7jaf%*fxmEN z7uqgNE9CW3zQ+=hsMClhSV7&=v@9+)Nm&l!Ick}OIZkEhpu@=JbDZlIj*6qV@jldT zPI6%JDaYKz1fNEBK8Y!={F43L;bnD{(q8VR8y~@|-FN_f=sx^0&jHn|+O(#|dkCCq zx`+I)(Z`|a7X(i<-bGn2AC+xd!ak-9qqvNrJLFfn$;Xv``FEaBCd+*b}90)ft|mMJ0Y&vqWQN8m1sm2quq!-sAdD$ zf*!V`)7XkL?2PAlI)-hCqZt?3mNe~Z|qjdXCe z|0+V<;83)Db`83A9hzq^zg}0Q!WAibD&p7ndauLeM%`6ZxyQlfV{PObT!Bva{@Mc7 zu0RB0STm3EA>`MC`82LaNk8XfJ4OnFbZ&#%pW7WQL=cP{GK4DF(TAM zR(kO%6ZcE*{6N-kqYsaX`EP8*!gU8ThlnBNaJ>P)B8?33ti}V(bCyGmH|6C=yFK_! z-eI(PiaPmLCEmjE2IvJ((59oFU)8Dp!DgjuYAQ%B-#0Efh){u)p{|uzEFvP2tmJms z@h0es;1cc0N5|`&u{+3%GOLKF&;y{YyyAPTTg1TmdB#)6K-N=vw$^{378Omei%@hpco z%AHK~I7n#7DG+ZL@J80#-x-l0-0o{%KYpO-SO+tzRIB<9b>dpI%^UJAqDLO5zeV01 z3=|FD!?`P(y1w+MtVX$#=H#;8hydp{bxsre8TeR_g{;If)?gjEZsxj`Tt>*^GP`B0 zQK@7v@({+Gj6`B;$6I)tV-6z`w52od%f{qm2Y82jZcHWcEb%G}_+7;hQ2RG!J$TQ# e{XRb6m`gqN{J-Nv&Wkt?5|=B)p`PPM@c#>RL^bLF literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class13/Code02_MaxSubBSTHead$Info.class b/out/production/algorithmbasic2020/class13/Code02_MaxSubBSTHead$Info.class new file mode 100644 index 0000000000000000000000000000000000000000..7aa6dd76091b5dac349431de7a0159365809bff4 GIT binary patch literal 760 zcma)4%TC)+5Iy6VI7tnJv^*PH0)Zw*YFf$;)CHjwOCenZWs7dY1ulwhDRwHCxxM~#cZXeU7GNRcz;-c#ETMR*zN^MSh3AcLy-VFs z2-#f|n&dMfQ>%CL$RY2b;Nk^bLZv@Yas2U9qZys*4_hZk>Z&v9?RAb1wK}c(;aNnO z3?2pvYpq9{+B|7T)=asWM)6^P$NbO)@+Dhx@lvvxz=Yz@x|qB7)fJ&$d&Uyq_v>AP zE!+vyEfebYDCp_ovFZ&tQfftgHR!6L5&vJ%PA*LR-cRnDU|jNkgS^c#9Irgaq_;fAj5lkK@#+_6 zEi6h6vi#lS9Zlr1k12fNJ05WEE9Zdi`$>3>GJ8_L%uFb?-tcbWw}iKBWm0Q}Et~BM Zdlpu)mSPnfj3tibP{ljmRAcmz{|ngro1_2$ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class13/Code02_MaxSubBSTHead$Node.class b/out/production/algorithmbasic2020/class13/Code02_MaxSubBSTHead$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..67c9bf558462070bd63a1bc43ba3358cc5cca085 GIT binary patch literal 500 zcmah`%TB^T6g?M;rL_X$6Tt=11+WkwONk3f2qcIL2wO8PBb3xO>4W%NE{ur_KfsR? z?;uN~n>lmOoO5RGozJiLkL40A9GgfXtwXbr!3Lo)7Yot!gg9Zcl;<-?tL9wzqfaMYDzaynp=kXZ;XVWb{G^W-B( zp7j6qU9&NCr!!V-wO)P9pza{#`>rns$&)R^k+3~xiv7S5-dKdLs@J3z&)kSj6A=r7 zISi7}ksVj*OTRt#Of^o(4rCN}gDBQ6fp2TCRLN;+Gv1fatmKphMn^#&TSL7{UxXO_!@y9N#wXRIAN&ySjy zGu5esnen5RIiujp78H`9^rKE~86#^l{Sbx8@Pz1WG|+@*1+AQY#j-J`WI1S{1)Dja zwP->xlnOgCR#}$R(WcPzSnYnaqQgKZx)eMMX0A##DkZB=7zI z2DV@;v6(aULNN3ovhZ0Ezs*2M#CuBF**QA64iN)U#1sOwif+u>M?alARSz5|{vYj!9Le6~gOrZ;G0j(sdX!a2zKTe6v=;Dw!4LTZk~2!jH|>q#!$K zAcJuhZpkdn6!UgbJnh~8ci6uGGwZbAI>W?eT}-&K;oykqeZjzscuAr0zTT5IKNC%1 zoA_Z}`s*-hz3i> zSK8u%0v+YEJD5$X)11nNQ=O0LnRd}D_-%fN!^e6~TMJf>a!5`%4cU`(mbAPnw@ORs z+^Vj+9CSv*EX@*7^Fy|&rec*VFWQhGJ;G~Iz&%L- zK|*?&yJFvAT&Arc&mLUCD+Kyg&cp;~X!P`}`c_jKTUg(Zk z^-mra3;t0PYa2dTGkkEA4rm{iPh3+8k2~&--bHU$^d=IE*f$*1NF7|n;kXdH6CQq# z#J#b*h;_x5&yaG?kT??bet-=mcvz+scn{v|XcK<%`iD3sGDYPzjKrKxInR~853!wO zLN-4@Z-n~pL3dwgP$-ILZCb=mYLjvA9mLPHd4k@qpmrP2u6SySo&}E4Q)wDM#vDD) zS~$VndXB+3$xO>&8^)Rc&(lp4*pE}JfYanS%ai9wy}-NgMda`jljuCXJB3d$gHK`M zcf1Y%ggM*$M;*uFo0KZG^JjbuSLyZ^{1M+K<)X&B@^)cVdhoftM~G<)ej~3TX8ksN zCNB|Ul*kRi@GkL;Zs$i_M_ehAOo^B`=nV!AsUvEMk{;N1DWx&wdl+)A1%LHdT4d)CB#K&@}EP+B@Dy{UV;*gy-M;xfIeJw4UL- z^UX`|+{US~{&sD$qm#NmMfWPYuYV;dPQjO0J7rcym8HMHYI>Q8eA&hmaWvtr8lHrW zObQ}lBXg0X-A;73?Jf;2{+Gp%@8G*Nw11(M(o}}@p^Y>9n$8Zp<62Pbx`wR+?Oejs z=3%MJ=lrix_X(z&=5FEQRgJCmZ!(+bOd6C^_Ynk0ze<^}F;uU^$IjBox^87fZ)M2) zIp4)FCy7&9>M(V;vZ+cV_3+vV+09kFH-zuuZH_KlBHosZWKYc|9~1EVTyt#N1oskI qJv!b|`~f}EWZihz=KcYG$k9tVaccSz=_b;xWcV@t5a;+4`2Pb?xcR66 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class13/Code03_lowestAncestor$Info.class b/out/production/algorithmbasic2020/class13/Code03_lowestAncestor$Info.class new file mode 100644 index 0000000000000000000000000000000000000000..4bb1a6533e460f0a2e1949000e1824a329ba442c GIT binary patch literal 700 zcma)3%TC)+5Iy4|&z`3poe2ixG?pO4sU_YD7x^Xq@$~13wdt z?uI(d_5``jdZ&Oq3J!`c#^4H8{Ya(hx9!GJd=-4%zKr6#AkCWEr;U@^sqV*uk$$MJ zngZ#X?gtffQf|e*iaII@P5uJf+0XDDdzim*53A3gS^YyAr3JfDEWY|_fqSZTkQ^Dc11@Kq=?>Q3yns=Q<;I~(tt|jKh`AmkYVzWFfML$N zphEl;vxwC;eZ~6&@#Y6`yoCYAy{!RCzlmFzqMc#~@ST-=C}1BGI3QOO(?q@Je#~H& r8JRH0c`}UV8JTS=SYUmQZ;_dWB`gp93RdaMMDkd{XL8r**HL%^z$%yu literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class13/Code03_lowestAncestor$Node.class b/out/production/algorithmbasic2020/class13/Code03_lowestAncestor$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..c1789529cafaacaead9fcfc086943adfbe52a908 GIT binary patch literal 504 zcmah`%TB^T6g?LTrL|JTCm;(A3t%A{mJ$;~LL?!$(6BW_8KGosleXY@xiBU!`~W{n zyn`%_Ztm$lbIyJB^XvU%wL%9~8!4ns7!ESX5(;y%6fGr!Y3p`8mtI21cKpCkt_bOR zV`L!*%Y^M<3l8DbQzDKp+O2Llk>~9P6+X*2xeh#zVN@G3OUNvRS};HEV&w56d!~0M+R+ns9AZ1`NCNWMUHu{qN4#97CUx1JNQv!Z(WOh*yk?%hxkSN S4so=`5-N-~zvNKDF|2Po=xLk) literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class13/Code03_lowestAncestor.class b/out/production/algorithmbasic2020/class13/Code03_lowestAncestor.class new file mode 100644 index 0000000000000000000000000000000000000000..607663da02aea5bc2e6a98de1eb641d06e2a2132 GIT binary patch literal 4623 zcmd5=Yf~H78Gcq;X^~irjgf;e7~7#n2xG8mY)8V_#<^GyU)UuHfhr)P1D#-+tjH`FJGLFihKh)(=I3?KX&R2=~X6>Pq2%ouGM!yaopJ$%_r7Ze0LE!!$| zDe%Xd2Q`!_*y0FH7pzR%Nh3erYfOcq!7pFsI&@S}c50eS5661e?w5RUr1`<2Fev`yk z#y;-jAz5igQVfhdVBmmR2%}mItVWHFC~9e-F*2ecvW|hxLqbHIj(Y5%+?Yus_N*uO zpxGLBD%ia-bOEwk$D;zIES_L+PHDiuaZDT1k$hu}7aakA0S!3fg zwi0`Fv|^tEZ7P=~&3Ogyl}75u=#!UauIE7-K0L%l{}oEe!j?2+swZHYBM5j^@2IIl4M_>36U zL;uH863TrFwl3%D@m$WB?XmLoZ?6P%C7#vMj{ybcPX6S~3?~(ImgeYnHfH|F-e1!( zh;u}dx31A}qD;x~c}a;ONgC3yY?E7Ok|I&#M`iahLH11@&*2g?af!cv$K>vTvkGD) zvP2#$F{~pEW@^Qhm7Z`nIc*cvsgjH=S%7Tn}2=wlg`)E({cMrZJf;0}DmqbapDgD~xH(Xt<)| zDrT4BaJ9HoUAQ=7uc@Tm&9cWBO=Wn2Ld-QQKfa3rCH0>q_gJ>sH$6FQ=FS?!8IDx- zWYb1w(8yWx>NmjXAh*S26Nh~Wb6h*0$i68#5u40bS`Z^Wl0j& zu6sM%CzYO5^>JaZDLKo{^_0zH@r2y!Og^eome`0_u#4s2=bdPD1cFfTBA?sXDr^Js zdr&@Q$A@q6Tc*Ja*SGnty8?I#FY_rRC7B~!taQLnNnj%WHw2VBpFul+523!+xH6CM zxp?aWHhqR_j%`b*Er~!>jRxlN$hlT&w%46{X%PO1({~ z?{TgQf#4Tt(x7Rm*3huS_Xr8(?VD?a{hxA$c%>tL7mfE3X^}SWkjG97`Qt#$n}{t< z#AHHzK9&)ECANJYvK6p+js)Zo*z1 zrAcKO_qoY9V#Ktc_xqK5`05>D!_m_xG&sG48gIFcs@A(WbQ9%KmF*2^>Ks)6!9aYk zJC*dNlEtZ@lF+!O?LKsA651Sg%VG{xIIWCqjs$L?JQBQtU_7A-jz}O9jA{af==@ID zB^VN50I0l1R+5h>QVgh5IErT&T0IPxUW}lR2mWcE)n}MB{bYH7ybe0d^t+bgU9upr zn?+`Bddx)0+I#pB^)+G!@3W_J_X~1GCQn1W0`pqTz`e+pH+1@4eAa+)<>!cLXy>2* znDQU~wb!x$e!0ckba-Uu&&;X?q=Y{Sl2T`mxq!W^0{f zyhK(F#&Mc4Ji=%;aTucxp17+CA9{Ea4l+sBgoDh-6}3*p`In-&Qqc0I>Y;s~J4p04 zE!C@D)~3@vapuz*Vr`knS;9TiQa6vUvnmNRH^p3N6MV`Lq|Fe>GKZ&FU7lYN?oD2} zOC`EN$10o;F~>h3*HS4Y(cHO@*b}Gup#&+yp9>U`g76YsaZDW%s-Lzn<1d_ZvVaJk z9ALYg`7W#(!n(r9m_<3R5!MSVfG@7_U|lf_>pWOXV5o;9E5HQ2r2iQ~{T#n=X;aFm zK+>~c>)bqYr0N@8{)1{nt-pn&c=RI6bzlKTBIq_+G!SLdEWljqShrFB2V|;p^C(g%F{JIi79Sc9Uwcd`7hIySE%n*2El8r>(?3Due0X9fh4Q%367^&sGh~!j){^^ zH7tBm!2^_RbSij|^7T#y=RZ%-g^%e23DbW361Uj;n3xjQauW7>!BfU0{)A(0@bDiK ui(DGe@GFHc;LyJ*>&IRvL literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class13/Code04_MaxHappy$Employee.class b/out/production/algorithmbasic2020/class13/Code04_MaxHappy$Employee.class new file mode 100644 index 0000000000000000000000000000000000000000..1a764b4718b761101501ce9b92d3c4b51204d4ed GIT binary patch literal 623 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class14/Code01_Light.class b/out/production/algorithmbasic2020/class14/Code01_Light.class new file mode 100644 index 0000000000000000000000000000000000000000..81c673203ce13f3f06f779c62a5778b10e865063 GIT binary patch literal 2441 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 ZrUz-+ZLSj7!ETHtR2VHDoJ9#$nBP*5Wg7qh literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class14/Code03_BestArrange$ProgramComparator.class b/out/production/algorithmbasic2020/class14/Code03_BestArrange$ProgramComparator.class new file mode 100644 index 0000000000000000000000000000000000000000..80c505580d612eb7688746a64c0b04c9bbcc9193 GIT binary patch literal 984 zcma)5O>fgc5PjpMb!;4(riDWJYMVflHfks!aY$6DL_!UX0#Z@0XydGcE61+Z4!^3G zN(dwlh%-NmGV55RN`#uj&f6K!y!qJi?>|3&UR|MyiVXu96IllfSR@qA#1~QbMKGwp z@103ECM-6+z>5zEnM(E4LJpP*+rce3ge}(>QMCW6-U|Ej`O8mlWE3AN#o@C2L4^Y) zh8!n@K7racZez(r!ND?$gxbxqt#EiQl!!w`Fx^CvgyTx*=FrAGKGn8~Rl;i0^eFax z?qiZMtD7P$b-X}!N5h^}A4Sh+OR*EW!ao(t(|T&m#-F{2us28ENsfj^&H!#|}Ut!kx^e~)%KDnUHEVun_ZMksIQt$lE&W2cwtRHjaO>_cDLw?6c-GyM;3N9o!p;i8>Zn90d^+21~Et-ba~etP!( z#^xqQu;PagnhD*4fqe>fckK7=-i)0~_g-AQ<0MN8`$pWHTN+c)qCN9|RH530-@<-a z3a!bET`cwu_D<$g&ar`86Hc)-UMTRmqhPKS@=2#yRER~dPycu1!ApgFx?pFAr>1(Q zs!@Yl6Ll8q5me}W`7s5fSh5R5s-^^9qlFNf6avZo%H4_8(z&&yv%=k(J%Z@j6IQ|b ziiH*dsX4inA7Qkah*)?P2NY^{beyqEON`0dYeX6qjwU)3;xA`5na{4+1-q0l_|Xo{ zkAvtk(QV-nqFbd}ExDOqk^C-o){A-3Ax@?{?=RPJxV++p@8lhpiiQ!ha2Roxnw3lC zvtFss`pNL9*rK8(;>OX2>?8O}Y)i{H36B8CDadt~P&*q7{#gZeG^Q)9DRF=uj z_g*Tvxl*E3aA?dboTmmC^DD&;Ki&Wf_@;%oFs;zw>HK`S=X@T{ z3bPEl&Auuw(F(eBk3#LVn{#GYvx`n)&R)!LB{-c=+L?K~;L5zRsF#*p3fuNS9YqDJ z*nHAdjO^Nz{A`#+$xbfM*ehEv$~kM&RW1>x@;TzED!ExlP;zydlG!7x05T|3e}Qk zj-R55w1Pj8Uo9k^^R8&t{O_yis1%7%W@)M!NAzW8Ybr;tPRjk|aB5a8t59DV?Q{t` zXiXpF&jbl$AD*crNw-I{`^)&}RT;fx<<$0M;s~mv0k>IRa?9CN9JPXa+3&ws# zRczy97}}$lrme$##9htHRKstek>^6ZaGQ5!3}OyfxHr#_4qr7zkt?~9`xg%+FyZA5 zKMId&C-jgW+jxLuv5?;XEdp(y;sA&1Xc#ggEk;;hC~q_qz&cvT?&<2`=FgEGEZuwq zD20Je%FxBxAv7S$`>qGwh>_VLHrWvm;~3d@6ZchOG>B>t?;uE=L{z~oqib9fr6%w$ zM?Pje#cV-x7FHH?^C@(tj{Li9P5xW|O8!1(vb z&c_^`xUr3z6?=w&iJM9_m2vYjs^I>D2tI)w(e^k~z5-0G>T%>=v zc!GY~8X6%zWPF0Ac;pFcu5qI43y*Om@etwdC1V}OB#efWEsyM%yJ}VT+!Yd?XZ^2w zR1VWO{e*vx`rqJsk_4pF#B=Q!#RBQ*l%XFsM+Pa*Z42OFk!$kj@SF$`;9j|o;<-lX zPvz&wP4yJVmHHFSWg$|GFL&*)luCpct+Phz8b^ZzW$Q&Apex+Aj=>?Lg=|jBW8^;e ze}mJ(bKl{D=fdA)Hp7`*6=gHVXde)Yh7{8}wE1nqO7nNc5^Ln*DCdL7@RwS4n`8^6 zkmi@hih9(=2R~?(nn^%Y2($ XUOtLh!?(iAP(#D#n5UiJc~t)cz0nS% literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class14/Code04_IPO$MaxProfitComparator.class b/out/production/algorithmbasic2020/class14/Code04_IPO$MaxProfitComparator.class new file mode 100644 index 0000000000000000000000000000000000000000..3eeb7541d62da44c88560378068523e95f664968 GIT binary patch literal 916 zcmaJp@@T!pgW1-5?ZxxMp9a)HSMi#>zF6ZCru4w z=`qi{3VB7EQ0hwGJs1vpZunXBJoZ$&fg`*V5lUsJ&U}0>BSI#Zj0Rc+Eoc%Jr}0xU z?+6>U?)cbSlb*UwFpg#47x6G;mV1*SBhOf)?P&~lnWuRi3`57=ldAX9-A}$zqzHur zH;VUzDAuvcvzhz~f@S-@8+Oz#xI82M{|d}yOa?2w5gG_{0CKE(@mM})tHGLB&usnx z-S9=j6PD^3XyPeLYZQQIc+M87rDCa)_thq|Hn+b)-{Nz6&DMQ{_X)!CC@MwZcr4&W zf@)%sZ(8{yqrOa0KX9}{EpBf8Mq!)JcNE8g?^7$LzVAwt$ zTzYOonD5F!Ci{ef-8?f;f}z8-umFp&;`$N;qTt1G8 z2dL<%T3AGl(3p|&K?c1rPI}?!vxr0zMg-kW4Uf>V`!iCqBAxr*nvRYo!czLBaUy+Y zd0U~VC=)7u8F)wI(ZGv7ih<9bT0eA!e>i+GWie~GnJuVW+Cb-ZF-V`3%L Mu?d5_QO6dHzms#udjJ3c literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class14/Code04_IPO$Program.class b/out/production/algorithmbasic2020/class14/Code04_IPO$Program.class new file mode 100644 index 0000000000000000000000000000000000000000..90a572063803701ecd0d6b2ab7f54acf121bc971 GIT binary patch literal 469 zcmZ`#%SyvQ6g{`EG%=c5pM3~EDzsf#h3+hF3SywN1*PChrg5k#X(CDLf4L}v3qQb* zvfhaW7vf^>x%V*Vo;maR_5QJ3qJskiDWo-IOk|NG6sF=uv^?QYT7&UaIx!*FaeX(w zBBbk$k&Zlc4Tgy|n1r(9i72{gx4OZjJa0eP!$EBr29r?C2=vUyR*DT1mby+3AzQcY z#)yzn5`xupec7MS#xlGUV~?3)FK~o65}~W+6`6^j+=x)^{cm_lFm8i+=*VkV?XiB} zbf!`f@_iY_H$fC@D6`MsRRq)aeHnIDD#?D@Dh!S|MGD|UDmiy-utLs+0?(Vw-mC9q zw3=_AW@Q1bSzTcLHIWv%7Lnn4%=H91YS_RjwwO8mkzpGOD;$VOCTZ6`~^<@4TQ*kJvJmEVeGE%dURENRWFe6=2Ma%9mw>72XDc;t$uEnq8MLqmdj&!@+rBT*lS;QBt@jaO z>|qQ0Fd`s|T&%x|l!bKbrc*9!lLHpUe3P1q34!=#Fbt#XD-bKFsy*ANEZXi>xmczo zUT})CJTG0P`L;0R-BooaRoLt*OYv=0EzQV>s-pg|OF3Cno-7MQSe+aErSr^Gab4iL zM(nM+(_i2QRp!?V9hFw2FR`KP`nh397%p1*(mERUZA^Em_9f+`-}5lF1&HBxbFL z2``J^X<<^f{2J!MYeW{B*w%z~EY#v-zEc((e%HyU_?d?NG`$;TMd`|h`hzraxPDS8ry7VM`$-+8wBK4H-A5sc(YQXjSE z1x9a8`RP}IYfcY6iCQSatN9_58fH3w)J~GuHPSYTO9L{j>ARl8(;)DVWkc+U- P=SXARfAcltOgi#E-IXf* literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class14/Code05_UnionFind$Node.class b/out/production/algorithmbasic2020/class14/Code05_UnionFind$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..ac47919ef30dbf79923fdb9956ff318fefc53422 GIT binary patch literal 670 zcmaJ;OG^S#6#kA*>P(hqX-_M`g&Jf*ZA#n(Q6RR+W*b)Cl8bx4^Zd^1c_az>jw^!T@Thv`-8l!xw>L_9>RhV3Vv`Moxq)!|jG4wH?Pmez=#o6gKZn(}Iu@Vcq$5PEcneM(mZ6a9LUf=IH=TeW5om}0%UKJtHbb|20 z3&J?I32Xn&LP%aJ<@jg%5Dt%R=*^?RcZvWYetap$1(qUMWQos$6w7J0v>A1rRe1$f z_FfQwW-W>({udd+xd!K&tYuisjia%Q71lTp*%5p0k8kzYr|XR?uZ?(g59`=qe*~M@ Q8etwgj21^GkjE~}FT1#sF8}}l literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class14/Code05_UnionFind$UnionFind.class b/out/production/algorithmbasic2020/class14/Code05_UnionFind$UnionFind.class new file mode 100644 index 0000000000000000000000000000000000000000..acd4ea1de0dc1f8707beb28cb78693a7df20bcf2 GIT binary patch literal 3387 zcmbVPU2_v<6n-|@bklT!($doK4MLmrgBGPNG@%q~Yl~?S3qcTsZM(D!X%dr71yoe< z<4P`_(K|1oH_oUtT0~|Xz4gw&;GO@#aTx1!cGFGh7ab>Q-t(S4?|Gl|oO9lH`}@B? z|FW=vI6e!(2fqeYM*tNHs;?WfMtjOgPqm*Oziv+03M%4O+Om5U_#@GzhMV;i7MzCHt5)hO$zo+q>Oz2(Bby}%%s`TdF5Q%%A^Oa^yGd|QV>Y< zVO~LPVwumF_}i?bMx1F`BWI@Vyy&**sB?6A>$b_wtFRRf8p1lZVY`BjB~J+}&j5m! zZRQL+lT%P1iI#0NT-3*^uoJs9?AEaddll4_JS>_J!L*SdHE+@%dAKMmUeK{02NbAj zN4;gycNu#z4NVGmuFAwHqYt4GQK7$CL0!a!SMDO36n0y6wBaB(&lU*b$O?8VtX!@N zp#z6Byr|K$4H5rdZpYvQ;I;G=PB&2%Mc2XE|5td}+O)97yv!>F9UC2?6msMP`UE*hxv9%$HMK3=JF0ZhBJ!{uvBmNWr z*S}K$&lHBZt1TwnIUS_`V$mdNku!irld#g}XkljD%$+sHQ`FQXG80BBY2+-K7nQ0U z3JP|w9RfG=PZXH$n&oBA9qnn0=gR)oeR!u39aT6rPy6aJHXQWqf@dM#$}YlO!?*Oc zn?izQDiy3zavqSy6?IEMEb2EnoyHTd$Wy~ou3bZi@GN_Q{axnCSxh9|OLg(pIV!~= zxjprqzAA3N9(QaJD?et;m}7EEG_7z-xG0}F2rnv74E~LCb%d<)8>KE#keg-QURaJn zgWHZdovI9TI_^#VvRATIp30p-I}Xm&cXKO7@)-3BMp_?Zhk`E=r?5}K=o2(vXnTZ6kJ|hLLTzDn9xdl7R)vk@8ZkYg&Ww7G;i>Wv~H&LAg$iS zB}#F$)8Z`#!Z2_JS2>DgV4R^&P%ha|diJJgf6cR>qWv^yb?_~qRoN2pAN>-PiVrz9(Q9e;sLU7iQs}bhU?_Z z=fqyJa^n=MNzW=pD~UJ+|5F4tbnXck!TxB$AB|s7!n+( z522}ZQ2pP~)D5J9Za~;2z)c?DCS;j5dESJ#DU|~jD;Ka>nVywd1RQ|xK;L4~=lD1e z+r_GU%dIQv^!^g8qf5Z{sI1fnuozKon-fCEJchdhGMBPtOpcKtTHMF)l1j1^M z7S`GxA{drH+j@eM$8a#L6-&N0tcm&6VyQd6g7X+TzqH~Hqnd9#d(p+|wAm(hh`NzP0kdq^Aq?OhN)@#4!cAsfw=PitiUG zuErhQrk$UA&){83s#7OJ^x=A&^t?@a-rQ7(H#ZgHO;X`{oAkU%e@Q*HAh5tf(wq+R zY2de!Uxmp&!SSj5E791;zrR`3ZeP8}B)*RXe|awPJ&;!cN8z`29NvYlK0XiLyMu2uJx;o?SjYYL)A;(o=$CLWEAFw2bGki7XyOl5r%6@>FCKQ7FUz zf=>0KO2TfmO7M!{-{S&YoSk|*_+)x4_7z&>35L34;N{~@EtEUY=uIQam*bHIYnXr93(Eyi~3H`uN- ev$4Twp@S~lCVQLcq0fF$`!2RwxW~0S@O}XWjbx_) literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class15/Code01_FriendCircles$UnionFind.class b/out/production/algorithmbasic2020/class15/Code01_FriendCircles$UnionFind.class new file mode 100644 index 0000000000000000000000000000000000000000..aa980229549aa14e370e72d41e0bcacba67a5683 GIT binary patch literal 1239 zcma)6T~8B16g{(DT3WYK!1Cd4ks@HJ*aCt^zBCfi8f;BK5`&2>Ws$|YC2jG+Xa0o` zL}S8>FGkSB7=M8OLmy2114gZ9W-AZI7}NCLJ9qBfIp^GIKmL68pOOH~qSZi~N^Cl% zZJ9V>AdU`M;nb=EA{Sw@%Ro0yGP$9;>Z#mNjw`xlItfCcWx@5F{LZ5_r?OQP0vR!fIx{(wvPt-PD_D(JQAB`!($O}XlYj*MBEqlAsN!w(rrX5L^K9y5o#1^@3 zj7l@6q$AGAVtJ=hbmmVy-$JC#_mM+{d>8dyENvd5JuqXL z&(WDaK*+KRbWuw$>}q1a{^b=<2aupmBSM=bhCX6A%^~-5gahcoAnh3pBZc#fFR`+R zmAyRI%ZgLPC9zL(m86$ZA9I2|fL3UASsFsK5WqKdv6wHTLEuG$z*Jzyl<>^Vp28Wk z2+x#InVR0Of7;dR)>Fh~g5Q{xF-f4lU;k>pS15?~fvR+1#10Mh@`V||AJPiFiG?CEa+!`QpU-HkCzlqy++I)k~*|bG_K~Kc> zJ=`X;Xd)wRT+cj1k6PdRomf?L;(DU64@s6q{$3*EZ?Q=sefI$E`Z|a9=VYc3@0f*oq+u;lP zA&3ndHf&l6q<#PrTRwr0K&au|G=dF^A9LrP8K0Rm*Wb>+oQ=n*VbeeYiU!q05-EZC zzVpth4xHd+^-;I)xv@a1<_CVfFQ8cEj)qGDC3oON(avtQKJ0mScb+vu-wS$mKXeCP zwDBbHhe5*+dImHYk~b}&T6Vc3fsBbcWCfBVna0(!r;*Dh7O=?F$cv*%HCsbYV0~6K zrpqP-vQ0nm+M_pJFMRBD2SgT{L)RH}oY0s1DX7M;e3BQNvq<*@GA}6LLJ>(h1ncO? zF53d4&sVNK-xk{>POmMXPZUYv0@h6ae&>=*JMuvt)_KTvZj-L*>LUQXRs z-^17{{@6Of{3miKkabJsmo*fmS=YoOGAQz2v5;k}8SE0}@Ge4S&K+E(r!aDWYZNRwAL0fv4u;t`u|e^-i06CdQcCh7Cc$JRK!9^4@$4HNmtzx6Ue6iubu=C{s4cJ zbvAkw-G%q&%@;HC@%i??USot^9~Nv6P5>7TLT4dfM3{;EF`Om~nO20xNad=!B-lsC zGY?I|VVVi8&(6bfF_(kkeY|{5WI279XfB-V{#C(cjtLUlk;>(F!ktJm_Vl7671>Ob z%IF`bQ#~n7=tuvzz99Iw#j;H0wKDzoexKshY(i+pQdc*Ht~~Sz`+v751d}|M<=E^e zc^;cr!2vuzl6l0R&&1eb71kPXPhLSQc3AKkO&Ex=!5GxG%e=|T#ulT6HaazTvCZsr Kj)yLG(E0-1UtNv> literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class15/Code02_NumberOfIslands$Node.class b/out/production/algorithmbasic2020/class15/Code02_NumberOfIslands$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..b0839d23c93613eb30128e3a80729ca7877bb153 GIT binary patch literal 700 zcma)3$x6de6g{_zZ4+y&)z+~Ns8B0d72Ig(rXUtVT`19=yvC@Jm`a9%pXEXX7k+>r zWxcOep;p92a_(^6xzpSG%WJm_11mZbP*PAc7(tRSek(en>Iwh4dfd8o?1+#wT;Gjq z1f{%TX-Gp$LC;_m8N#aVi7?#RtJd3>&i3v_Grns%!SPiiWQoggt;u1+NJn@vW8VC! zen8Mp+-qM%ali!S)Z$2?Jj~m$2&ybX$eFJ1^b4Jeme+Hi=VpS0t^b`D)R&iwDo+>*;9 zq?=9{9ks(Kg+;>R-_sE?4c~Wyx;&G^>rmxIu)-4Qz W%yB+}c`Wp>ge69unQ4@;4DACLOrHt> literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class15/Code02_NumberOfIslands$UnionFind1.class b/out/production/algorithmbasic2020/class15/Code02_NumberOfIslands$UnionFind1.class new file mode 100644 index 0000000000000000000000000000000000000000..dfd88484779c03cc4db23292bcb19191c646b85d GIT binary patch literal 3255 zcmbtW-*XdH6#j0r$)@Q7rKLbb5d=!oAGDwaY(fQUYolo^6oOzCHqEwONH-z7sr(R% zzh-=qcYX5#`{Il`qeW!K(O2L67ku+Sa2&?^-Q9E(+K$bP(=>bU$#=hd&Uel|cYpim zr=ORXk;KOlG$5ct(GWyPp!upkulMA2Yo=#Bd)1h71VTyEGMxc|KrEh75f<3$g36AW z?-|kU*-^b1fr>yQnxLuJq+v6*2*juIx@{ls>lrNMjNT)c$I5eAqclF9vPqw__n)`S zf;DVfxx)fMix^v=HNA#9A!)a2Xpx+1Q7;*mV@umM4Q;N?Hg6g9p$R*%Q$g_6MbSiEMVRK=cX!gJWI;&}~wuveg^%CG{V2eZ08X51hj<+vnQ z?9;Fx2Lu$$HE&ztt`RYz;-J934FnmZ1`)I)E_2Z#&=&KYtR;$Pq|{v+x^aju6w7qv z_&T_CR<1Qg(2K(=j%auhFRi52-7RG~#*9Iw)OkH$HpZu=W~qv3wFpLbRA5V0sR>7) zx)wnn0@Bf!HS{AvM`sK=+P;pXwVYnXCFJT88V2M-rC7FSrQxK8Q!**4X%Ed6otx4& zsNq$qe4toh1vX(=!)q83h)lDphIMCFMv#uB>(D(BuL~s=dtJjDNXvS%oQzb54#eUq z8Sa>dap`raWXu)jnM@UDG@O-aMOLXmOHxrcN=YhSL&zceNvW}i@?EkI*#Y_(@mA9S)VYR3HOYO6sK8#8pxV6 zWVGk>d|p84{LgZ(j~IH6&#d=sj4?(0xQf|^!)k~nGyQ8f8(3>%$C@aVOH;(9?~#0%G-XP|H##06sC0z?NHf?QeXc*x0Ps23li@drez!{+L+weu0S z3ygL>!m|ROBgw%F0%MQSezE%@V*N_T_lR^yl_hju;IKKW_~X{7qWp*+`OD(+uitS? z1sC~!h=Bk)XIZ*A#n*rw4#41B&NPNGgEN@LJ1}t#S7Gt{644z*4-@q^COJx?hlqC> z2*bc-T;WrWbTSGu*5Y$M-th6$K7NMyS&MrQat`O4j3)<6*%YSq&;gv72UBWm#O)GztqWszU zEr~o;cJmSf;|(*8Z75Qe>xjeVMdn}-^R5beyp8>chp56NoeSdxwYo+JW$aay7pFw! zd{mw&8F2)GCkU(P+Y_yXIY*4e-MupThJG~?cfUhsxDw40hQ{1E-LTd*zkCDiUk1fxp78dbZ$LO7}{Lh0@gOKqazs9Gtb)~G7s zS1RS>a)p;LdSP`H-9j^N^Ju(}gSdlZxXUyxu+;Cdo<5+0AL1kaeTGk5{U#aFF=VLj zbsm8c457qPi1?#adXgD15To9cRFskXI^Rc`)h1lqJVy=O^)B8cF2KF#aDyYo)qaE= z9$U_5%lT|xJ|vsrvl%{H&S#S~D|6I|;4+h=x>ebrf}eJN1U)&$=M(uF-+q$+f3Z}& zTD?i)TS)VpXPvKI?1FqseOs6C=GPnt+(Q_0?Vq}`Xdb2#t}LOdMY^n1xNlQt*>UbL Zc==qQ#9;4f;DKJC)Qx;8UZC8K{{n#Y1^55} literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class15/Code02_NumberOfIslands$UnionFind2.class b/out/production/algorithmbasic2020/class15/Code02_NumberOfIslands$UnionFind2.class new file mode 100644 index 0000000000000000000000000000000000000000..0f2864ce4d44dc8fd02e536f0a1f75b40f247857 GIT binary patch literal 1692 zcma)6OK%%h6#ni!JhpL&TQUv7c1cSCdt98vw1(D6C=HYvg&I^E2~vqnoJljm*pbI6 zs9{C(FIW^Rq-@v}lD3o*7F{4A9x7tN8-W0c1%CilnD5>(DMAPlIrp4 zvz1D&A~km=Fo<3Bou`T7@!Q@l&e0=<)d!wYdg?atOI**@8nh05Ijqs?+qs5MDHF@~*>Pv23a`WUkDOMUk-dt|gyd%CWD)sLZD#&>Y zM2~qv`)D(0TX0C5a+;i=q8yx}TpdNZ z0;DEbDt7a{3lL92hehdG=MsdI*NdAQupE5@J^9VCw6hLtVcf}Fjc*_slD?4i>m|cB z(&sU$mrUD~hUalGZyQD1+?O1A4Oz!FZ1W=SC`G7D+7UZaCDUg|jH>g@I(m#5CRsJb zTIbrT!E^lrVd&Vy^Kq5}T!4YM2>ESn10At}6fP3@CFF1!!*~Y=a0QRzT|9-Wn8tgU z!zSu@AEzmQnfh074R1Oz<%a{DiynDN|i%+Rs?yb+-8Pzd_@CEDsl8f~f zKW|^NwcoJi-?EnPxP0GZ3P0c!e#8=f!WsOcI&d;9VXFfx*vCk6NGsT{Iv}|cIXRpa zJV4H1mH-cuGns3V@#O*zU=|0-SKLQBhH*Tk=ph^?jWbA;?_dJ4KLKFsBWwTw literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class15/Code02_NumberOfIslands.class b/out/production/algorithmbasic2020/class15/Code02_NumberOfIslands.class new file mode 100644 index 0000000000000000000000000000000000000000..54471ca327104521d639a0cc1a1753a68b2fdc2c GIT binary patch literal 5479 zcmbtYYjBj+8Gg?0xBG3Dg(M3bNOpk@1W1-FNtPsF5^e@5(Ij3%uox?TBnxcV?54XL z6?;+J)JtpCiUJA}K`m<4f|n4(4E`xIosR7f?R0FNacrvzbfz2uEaM-Dj4R#%x2M#y|aypGWjIy|q*j0A@j?QR%M!;DY zOT;p31?}`ytGj3!{t!E1? znx2gtUf5?K4|8?Q^B^Au0<*@MN`5rX=;#pe6*pdb0ktK!=m-duOe3f@5lbdE#S$GA zZuqf4-seIpZ!uKrOG&lz4*e+fU=bDzIC|tUfn`$&oD))x}`x! z$v4n2;zlu+OASluA?X;YR54aarOE{K;s*YiYfE%QD1$U^RH8~pwFj%Pdh`YrQksm+ zZZb;I<;gCk&_?IFkD>k~VCp)_br4SJSrk zWcOYHg&Mh+g^jpI$0iTHh0T*-+OjvDiAt%-9=g$IURo?!c0($b$h2fqQKPHYg=+=c zhI;#k`t}X&e|zYSC;xu$eV@MFKh*ca`9t>?cNyKEzIJ5zkrO48mWQ4^F?_n$+8KVj z_uM;=ojdyQ@acU+M-G4b_`~LO=s^GZ18=&~h$bD)9$b$bMj<;{3EJ5$Rf^NwlVC<2 zV~JhFg_jq0lLsx>A~3hh*b}W!Cfbe6&9TgGj?x(;A>Exv=afus}{5A7#< zB4SD=DS_<9SR!gBsx8KjI9I%l$#x^Y)kwwU+*;H!yXCzFr^!>b0-}?j27Y3U=N(BS z#YCdVMl;~dmWmI|Y_cqeanp z_Mt*~lkM5tJ!(_+CG6{_V=I&JT5`N`I>K@JUz_LGw<*Fx@E~uZt)3TWBzR+5ml0ze zCIeON%t|zQcNR)`NAGe(2?$zWKXI+x+x}s z;-9+At&lZ?A=MmBXPTn20;Y8w6j(e>$!J!1%(*&A6l79HcT+U8JK2%WcH)p5hw+S# zBQn(b1d7J1QY>*ta!<6(40|&}Y%!)J*61BV{?PS)!nnZr3WTX^+RiJd7`_$wU1qgT=60Df@@{tuKp6!fBLUKIVCQgWB zO(IIin*vKN1I$!7(9zF(zA`DJ!vqZqnYV4KsJmDv_*`WBUCztc3-*rCDTtFC*pOl? zx4~y(nytqqKn6XWWyuo66?ynAmIaM{mA%fsCJ;Jv45jw9^F#IsM}bfvGQTpX;#qil zg$M=a4?yp=i{m4I>$S1{qyH5iv@2mt$rPAH(b;e#2Xl~%1$_4vVm6j>9_IQ=%vH*S zDA2>5J8-8GUWU6kl9p9rFCy%1q`jMK0^j3|b?G8BAud1{1z*C!e@f%~*D~Q1^0Sj} zv;Pnl`a@^>kRLb%UqBkshnXRNBtRqjpq-RMduzzAbp&V%``gVvpmnHuK)ap2yh78e zMZ9q!fFR~m--Wa!$lEUD18fo2VKLuAMarU}Dc{nbnkb9p^>0>I+LRp{Y(aVXEX}6o zwzJfn62z9!nL4TM8h_v{X4;xhBYWE^RRyp=K2mtq^&w-bGxd~Bz=^E3MT2*=N(2Ct$PXZfA&1CBqU|A(<2 zpYgeTfe&Uk>cv7_Bf{7uuEu(?8S6wdu2bl^n@BApwk6)3{O++)p~HbL@;29wb0lNH ziGScWwWi~*+&9;V4+~j#aU;I3;=&~w@dJ(+Z{iyKkdbG{JW+>xa4)UyB%k~6BgV;( zX?Y&0%)Q>Ry`OMT##TLYN2rohM}-hNX6nczY%jniR+y1?QLgz#IcFDO8|x)S<)X1* zIH%gzT_gF0<)JxL2b)-&aQn zxo}ACSU4--#2RLYtrPakj@+ur(4n{{N$ztf5w+&nlAX)bK8MyJTb?&%Sd?;)I}U44 zh0z;IsprG}C?8LJTjAq1KEmsNl;C=dY3~;(z~f9~`>>Ydjo6PS9AMBNWWL=`mmQ*u z4&xy_gC_~C=g^0fIEr_048Q04``rICjw|5YM2>S%t^lDi*_10lXmsigYR$nUx!qdh zjgNu^AC7_qf3iT5OWyb4erhS5z5<>RGIm%_FQ&&!EdP%7(!XK0!=~c_F~SpLEBra*0U^GGlSWetzXe+se@LlL%2+ds zXqludY|W!4FI7pJNSjN{5NQ_PS`}u_E5rX19yi&nl>gxc@Q!hj+2|`~qY)I+3uWx9 zIIk6UW%^o`FA6MYdzrgrMv&!t&6u-m#++R>nh|(~4-tT-vjfmZWC^vL&1bg??=O*W z8v0Y_IQ0~;wbF1mtI-De6cEj#MiVuTtX0meRjyq7xjKGWp9WCd93H^B8cns1*HQ0n z=*M;J{eeN;2yilh)>TffkYw8+zB9Jw;#!_7&lw%W?PH6QFrScVAH>eF#R-(V#ugQ& zV*tAcv1e>?0%cq+l3hQ#a+l@Q@iS3lrEBv4*L7MA#@}Esv%r8)Wt+(23&zb~_+}tW zc=*%ZOeXGG@QNHJ++6-5=0#A<#!@kdzX|1`Qq08$keUHnR`SK zy`m6Lh{bqH6yYVY1h0vuI3tSj8xg{9#d5qWO7R|x(FbA$J{D#8r>MXeA|ixXDV(BG z06dJJ6J$2A&H|Sv)>z0r;$HkE!-~)&5eo qFRJ!s)xLt)cp^kOUh@4lqtws-1bbQ7PqIJ2{&n_m@LhWf`Tqqe++C{x literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class15/Code03_NumberOfIslandsII$UnionFind1.class b/out/production/algorithmbasic2020/class15/Code03_NumberOfIslandsII$UnionFind1.class new file mode 100644 index 0000000000000000000000000000000000000000..047cc1ec3bc9ea0d796f98dc3e8e77819e591a1b GIT binary patch literal 1782 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 XheVV zz{r8;jtr_rJ2YXUR{;hs3}Kioa&uE4p3MLMq+IHO0uT0M4C4mk7A7#+rKq?Qg!UFG zyasi}TMUkuz2`e_SPXqzZsq!szzG80jpAzL2&U(w%~2r0{XVBH8_h^6K~^; zfhh~`;H~G%{S*y}H17 zGIcaUC2rQjd1NWYwZ9F6{V<|zF8jXR$vZ)qGjS1f2Hv-D370$ax-kNMPH6iw^n8Jd z&T$cDwQbKG!&Q7>;6n@ZO7!SKc{&hAQk6l0S`>D{!lH^nQ{q%LKC*C4Rjse$xuJC2 zKt+1p!VTOcs@@2y0_WaT%cH>?SfPSWJ#Mfb7v{daxl$yLTClD1j%ybhTN}22UvAWB z8O?hYSu083QR}u*3#$(EHl9C9m1FidzoK&_x$jkl&!tKNgWV=VD-C8&b6cGes7~h2 zmhgk-R-A#&ej7XFX*V~06WtPb>K&O=hv3mIS?E50iJQ+J!n7&hfEtLlugQ8l0cO!_ z_!WD_Q7IZaNaT4{T}C@ zKk`_kg_}i%WHH))PX7h%$qN|k&(NQL0h6<}mPt1;P@ds9QvMC2>8Ci}#9Nsr-hGUR zoRWVcQJ8&-nI1J;roqwu$9(MlF}iku@Ss=q=V= z#CG@o*xmb8g`h!&P~d~1)g49yZq`^DZo8`foFV&Pw^QO6emj&_nD&4 tX`kTS@|E^|W!k==?-XMCD@+?O44AJlX&_c6=54|-I!)`{uCgV#9DL4g1O literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class16/Code03_TopologicalOrderBFS$DirectedGraphNode.class b/out/production/algorithmbasic2020/class16/Code03_TopologicalOrderBFS$DirectedGraphNode.class new file mode 100644 index 0000000000000000000000000000000000000000..e97be77c845dae8acfe79637dc0d8584695fafc8 GIT binary patch literal 728 zcmbVKO;6iE5Pg#b9J_{mkfmPZf~VR;;=J2vorH%=I!It?}z7Sv{181D1^sun9YTPlVx@X5%0j$nCF}XTf#g1w+*r-l-l){q3k* zJ5-wM$ia6lu16h?BTRY1l^%iG24)GR1auN9ud%PS`01!HvM_^mj8?EwM2TSfQVmCL zphH60c_m|)W4dbSi)f-5IM_tmq#i_S^58>x8j`;vK<*l$3YkwSS75zJuks- z`@Yl%F_n_LE&Rh6R+)$tz=vYu`NjjI#Bwh2miflCqQY{XJ?BU#@#Xp*sJ?IuqkfN> zi#z0Qk^hyXd}LWfhGm{*0VZ2>T=ElpDu0sk84GLyWh^o%|3ECUmBKPs5?#d_Yl~m9 IsA3)F3mOfvK>z>% literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class16/Code03_TopologicalOrderBFS.class b/out/production/algorithmbasic2020/class16/Code03_TopologicalOrderBFS.class new file mode 100644 index 0000000000000000000000000000000000000000..52b5dda0ea2f4cebae4dccfa24951573476f69f9 GIT binary patch literal 2493 zcmbVOTW=Fb7(HXJz1Z0R=2jd?!XT7sxRTK(H6;j{ITg7`HD)m1=Nz*gyjqNC@sA5~Y-+c4U`EF-s{M$c| ze_2_<2yTbrgI|YcAb_C2_S@!Nv%g>#^ZgSuw`JB52##1q%NZ5$clS)`*dh>djjE1S z=)Y`M=2B)k3?2S3T43mCHLw-i1a>y8&e^uPkhCg9+hRG=Hl30!u&28x*|14?`r#Ht zutUdA1G}(WV8?nB0e#M_q~&MCV^G)CiZ=}GMN~j5y6Ro4*iESn>)0o7DqAosmE(i` z7fLxfaPsD4saz_Q@>bR?OxQVTpC8Y3U9@bbE_0V`vpkokT^Q}?(9vn&01mDez=ci} z9hsNRM!#zos&Zmh<(2RfYql6xH9Bmd3vV*&a+R^4?ylwE9OHUTGghr9!y&ZcsDW2^OBB_Y~XkUH!ACX0|Pj&`c`zNREBQJ6FN=` z>}s?oX%**XPPI6U6N(Bt1`WK8)8x;*T*xS|k=35K%%O^{9#V`M7HDliaiRrhF{t#US0PjNK_a3rcs%z-5;vYCS~HHBoo8`9c7!rkzGymCoAmi^!;Wv-*@jHnG@3v-Q>xloIc_Pc zcmDS|dQ9zGGAS)9PD-lnK{gnPVo}-`)FCW6jI29raS$n9O6ubS`G_E&6CCyPE%*-f zK7{zuoqnHBH4TJtl~1E)fDe#yb(8pzAYAPG9vaUih|wp|uRTO4*}H^rs_zlD3w(<< z3VQ^eqAeYZ`+vs%B^;VwT={d2(Upc#`~i+|{g4*bJcM2))gXofv8ehjq4z1;mvBtG zRY&}Napk8cIKc=`rD98X>k-Zfq~jh)4+RfHi$%3Mz&#j!3V*~0M)mv&S_p7H&3G;d z+`~MDaX0!QEv}X&rlXn{VIUgtz|SkmLl4HH>Q{H5<-7=+m9E#|BV2L4K3-h;CjJAf zszFtK7EwO;Vhi5~cpdd(AL7{06So~Xbl?kg;!Dna#ddy;L%5H_c*x7|DURS*9K|!< zUeD2kKe+NQ#6%E%qJuY79LK~U2E-X&IwQPFR99yaCQ=wvn1-L|d-N-B6FYwRHAg)m_7}EoMj8DjpXQ<#)&iZkK7QM``W`DD8f2(e9 z*6nZ7eufs~*t(2X9lDOlOLV@1MqwHIbhJ@;fq|FsEhD1iEQc`;UMbU-Wpvdn{>In~ e_fl)zzu{Dhq1>V+t2o!$EW-M&(COJ#X<^c0~s457$xM-#g(Xg!td8l+;iED z2%`<$$ig&W+4upQ@Vo1YFx=Rx?*~2kYxD1Ea2a?(Uv-6dqI*&w9JV)B z4wU9XvUjA#<)FoZgb`1;(j!pQz&N3lpbjJD)%Ua(*NzG!3u8#fa0MGhlnACTRe#_H zIwX{x4>EQ*rmgzEh=!UmS|7zUoNsl!v&+RZtIf3zt9VvI&QZQ>4KG}&PlfBTr|1Mc zcSmRy+i%WHG*H~|_BU~PMgIs^I~eM&JXA4E<&#~n$7>;ETQZD}gD^5sB`kkoWP;uF zeW~|jJ|#C?c*h#5OhyXeLoxe&W8MpUSd9 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS1$MyComparator.class b/out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS1$MyComparator.class new file mode 100644 index 0000000000000000000000000000000000000000..a235c55b84c489aed68959b33a3b640feaa6781e GIT binary patch literal 1045 zcmb7D-)j>=5dJ2)=5pu7##n#v$8cb6`9})@@DGj78n35MC1#f0^N7l@MUq+T%LR zp`3+|*!NVI%KsUdXNol;e%j=E-MygRK^8V!hV*2KvmK3~sVi$3PjkSX%P{+{PWYNR2Q{m3*MS5^J;h1^PBG z_Y+&o2-O6kJdau+a6InfUV>`kKJPNcSB&~#f%=l86>6ce{S)~nudgVq0xwf5EPypU fOs;>##1)NAJWg~4Pgs}OlSc(lVQ@Dp*n;r~y}0`b literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS1$Record.class b/out/production/algorithmbasic2020/class16/Code03_TopologicalOrderDFS1$Record.class new file mode 100644 index 0000000000000000000000000000000000000000..9d4a432e97bd6534a452f5dadbd2a7a1ea21d7b7 GIT binary patch literal 747 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 CzaDBe}AasrxJX zmHdHxZDuk~2{WDaV>_A2^yl;yx>uHM(RfHUHRA7&wn~Q!xD@TJn)JT zB>3QG=sJ)e%CVxXKMsS58+{~*EVGs*)Ijww4GLbra+~XYy?_!ie&}?&Wo!g~pLPV57stb^& zg9kB&2?>*!V(_RM151W5gP4d}330qv7u{w_YNnD`C~?u&V)Fq%Lef#gjj)A#U&05N zrvytDrMVETiRMn{O^chW)(51<0zMM4C?SC*hR&uMTb5!e#4qP^41F#5$M-}~|MWCn zZWxAKsddIOyqx-mgqvJtQ7x|?mCOpaeJo+sma;^}ZNnOmzs}In?YbvL>@r-c z*K>vHIXic6Tc@=3d?lkB6hz=wl8uH!Nn1zzim@&47s(P%=~=nBBO5Azc8r2qQ0W+h zssG?ikP>C$R&w=73?tEohdova_lR(@$VuRXM!pRs??1A8vlg|KFJBwS&c=3)h;~$s zCY_<}JH^nGnp5>|m(sS0nEZxPwu*G@6d}4x8xv2_UPaFdE-<90PcX=Ej5sacW_W?IMPV``M1-dp z{}Izw%!U;a~VE6Ia%Tp{9*R}N239d6d!VxW29QSFCyG1zen5<%B(HHSK zVQ%u36URRp;lC=i=r-DM{q?xdAD?|c{R16J02ksm!gTFG0A2L$rgvl* z*U^J@^kNJBG^Q6wmH{Y;poEL4(4WCEF5?LX>7+yW1;cnr>c7GjTg-J5EKat2xK9y| zF-vdp`y_XXSY+Eqa$+A@iW(sA9L1vs$Ileu0m*(B7V;>-3zZPVbg!Wf8mPktsz|#> ugo+~Y8iOK45ep)Q=Kg@^FaEIhH%3K_k?BvY{tk}^8lgSViK}Fva z@xl1)j}q@}Thc9w4|DI_JLjHzX72p?`}5cJH5%BkU?68AZ(|D6gvzP-A{q~}ym8yTjHPo_D#*B%Ijk}m7 ztc`%ppeJ9x{(KN7(V6g8bzL(!zYw8_gOFglX~0~I)%K`HgX-C+)-o|qm`~*=(e3YTSjZv(&pB06t;O?p)^T6F0C{q&f{6yei2KlU&iy)uV9V6#q?#YU>(JO D?~k%F literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class16/Code04_Kruskal$UnionFind.class b/out/production/algorithmbasic2020/class16/Code04_Kruskal$UnionFind.class new file mode 100644 index 0000000000000000000000000000000000000000..e77cf51d5fa516fdc25fe7f175ac0bd595a63df3 GIT binary patch literal 2575 zcmah~O;b~66n-wb9d(?l3t6lfrKEX}vQUi$iFjSd zQ5;jC<{Wcp6}v&hn1LG$fbPQmSNQE--&W0WM}O*MkJ#P|#jaIAt4|)c{7|5u&3y-o#lFT{cOy ze+QzCn3cYXN%VOgF^nQu+Hgh3 z1SS;(me@LzPTwdv9G-4eH5O^!iZoL?5_m`IpR?yg2114-3CU|($Bg9VEt+fjb$;Pb zS<5-YE*H5z)zBhtmyb20H}A${3PxWY<7nJiotOlwaz|K!X)9+Y%WG+~c-=^6Y3Z2G zXN>HeQM6?58dZD6Dk(TpBk+GWjL5z1p?P`gF6LtnCGzq{}bUQCO+^T0#6X+w1?B+GjuDMi9W+Y z1z+Ge7e^GlKz~yFhK8OXJTI<8>JNy@W@GaYp`k)(9OeZlV~z)z>mh_`89@&pnqEFE zeGa8w9vmjc_i>Xe5^%}MY5^aRd4hl9UDi~a`nv2$e7IrF?a6jC4Ifm3km_yVl|+oP?r52mx}$88iB&>*)PcW{|OJ7w|9cNPmr>W-|`1!lojD++)Xm#tMDT1`&y-m}it?+{G$y*#%yOELUF1y(Zhk znrshU+1l|b(WFzm@d8+5SldR7LzuG1{3!}A<)={)C2-;lMeO-29IZ)nQ>J5 zUa3;m4`_ZMudNgrB}h>ptNurSqN+mI8RN?or1)XZIs10@T6^!~zuvrheRPC5coDRq zRY6Ea8`=fV?rBf8xT#q?@s;g8J?9Cu&l#5CB?Vezqw5Mf1cq~_=DIhgBW3R0Uls&Y)YMtLAja(Mr1lZ5Ewff!>sVW!W>#_>$)C zrnOQcf^+Cm(5vD+E(n}EVZp4PYGzsb_s2$?BFx*S$*h?NgDAMDq90L#j-po3v${w7 zXzX-ziR~SMi;cTh9m94EZ~tCdFY5{}30$pV_#g0v{Ej|v7fYI>dA1Y5AX+0Bz_29s z@`)>Jc8Sq-$XZ}uDAlE8efk}5utSt*9QP%L@-GQejlKKHLKv8rKA;|moFSY$4b z9lI!SCRMvK!(K{AizOAy(xSz)W&Q7}NFgl{Hr%XMlpP>26brfqPZIPBZYfx0%QhII zr;PWNiY(SxtFmnMx5i>it+O1pEQ4J`7*Zh6oiZ#vQ!Z}n&YHGuQqq&MbDFuXIfgtR z3q#(nA^W|aZ!jE*jufhcn9efA;RZ~9;u6hcB72JW%Z_WNQC5!fww>yTcGs_}Mj($q zZaLxtBXw;sk;XH?P+g_wA>t@B4PRisXxr}SZrNmox|@uunf3(<*)P>dX$BRDH&@Tj z2bE;}pMeYp5-yUp%T7*TG-OSCgDhQ_y(Q3@ z(OoaC%i6QH>au0&&b)kG< z?g56@-A~xY&&c_}lcXWZDSk*@h`QMEj(~a67`p>M(mqGBMo>T=I*D1u zZ9K*fTCq!uK1!-OqpsVdu0UNBZErB9Kv6KDVDcYa`d98(W?EoU-GU+wEq`aD#I>EW VK_>Ks`yTEU0&`fAL9Q;s{{f#m+pYpb%GIW6N-1(M4QgOC#+T5 z({ES5pQ*J7`F+*%MLY;u)93q;VP@)Djme%nti{?72B9mzDSfwcO7@o4LCEdNDBcaC z*hGc!X#AcjAkVMm`!a0mAxeIQ;^aiI%tJK5#Q-wwc}3Vh=Ez}B>}S@mK^J^5u)tRT z2Cv2ww)PN!r+CH@={;bpi+A^W@`DB#8 zFzc%k>nBEQ*24P6Z{#-lyFy`_I4!L(BF^G<(tZ(3iC@M_;#cv8y~XrJtl};5{{VRE BtXTj6 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class16/Code05_Prim.class b/out/production/algorithmbasic2020/class16/Code05_Prim.class new file mode 100644 index 0000000000000000000000000000000000000000..d5e46a6f0157d96d628f9206f83a2f146eee8db6 GIT binary patch literal 2939 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class16/Code06_Dijkstra.class b/out/production/algorithmbasic2020/class16/Code06_Dijkstra.class new file mode 100644 index 0000000000000000000000000000000000000000..c09f134e1203645521dc1bf2daed38d3e1965545 GIT binary patch literal 3600 zcma)8YjYFl6@FHdwUV{wVthd)5C=QPw(J;a>!ucUF<^ok%O-ZPgGn0}X|Wf?%3ZB6 zPA}>GlD4EtngnPr4NdCaGLy_OA_+5@eCmh(gZz`04ye!BU0p0ZDf*y&_uX@S&U4QD z{_E~1pO(uwfcKjbKu|?ULleRZww%*1>cctRS{$A}bI!;(3c?3W%XG#R1pE5uR74bP zb%lzKnHxT)7naicax+u}n-PPiqD8|dY_3STrc#z;EE=`~^`f3D8q;SLbo8bACu`1p ziKH0Xs-YFz=x@15_mB0}iFq+4@7<}l|j4^IyPgn&bM_`QX6onOx`0-VJ z5Dq`U>K5H5`zI?-M9)ohmxhPX#YE{uLGK2MZjhFsyjw#zdK5%V%b62I-QuL8=*1ot zeH!{Ppg^m4sG!NnE*b>|?H+n=aO1YEuTC;K#xsZ^6_08d#$E;6Y9+49h(E`$btlhC zcJ%qNxpq?ielmvr_>zh*YxoLA6tvdNR76OECA~0ZTw=;()PiU{rr~QCRS>e=?Y4^T zIvyrf9H>iag1JPI#F&O};GlwllUK0mUWgBAIE*6-Vwt?<=%!V8!dN8)8$rDw_Ks?J z9LGrd6~kOyVu(tr8Q;VcDke3gF-0de(x!E1iAh{AEu!0(O7&B=4aYS+DK3M0HXD4t zTrLZzpVDvwb41Xv9D9{~AT=vlx(EtIVt86=a8f}_4L5#JacW&f$grLXu@l1rzNO*Y zf?b#-Vsf%|T7xcI5pKEkkgzfuvJzILf`kgTVONDC4b1Nmk{&apvkffCa4=aO_UxQ& zoY#=U1;)e_r|lEVS=}+F?bM=`w@Jm;zV&tRmGT;vg%he-n7FX)tcoF9LjgjB<@~aA zK&?qOif6{ic=YJ{D< zH%&s)r1eY|qEjGr*3J{~SS4ywfbiFKa?Mst{d{7ijZ(riR)MVbTz0I_a&@_q>Bzn2 z4^*=j-TFCP8Q^2I-QA!_j}3|<)iUeone$A<2R1ruE?T-%6bc>v|EM)s^jy}THc4^P z0 z8wC}AT{mip4H@H3R;DNDO6YVWOAiY?%$q|1@(Y2&2=o8@d>iId;j?MrCX^4k2;c|& zm(M^1&+}jN1n@)rh;LE+7(byDm6atSIU*~?bc*c6|wR=gY-K+@5QlJzLfZY0f*cq4`B<}F{U6l zw@uiA&FJD@58w7-8;5UNK7yK%azK37pSA=v2Ucn3aHKFXnZ}A&`4e|;43iwi&t5Pp= z?|1yR2jRQuQlYA7Q_*_|aYe=cI~Y~Li$?E%(0v<$+f3yp3J35qtHp~VS5mER*D!b} zr(0*n21=Oy81o87L-CMbgF~`%Yp~!|<{7C+FYCeDJS%IrdaO&hgfrK$xn13P9np9= z-L8(Ul|LD*VLO0khOnD1yGfEB-tZpbg{c?g%;7ltFw48%91=Lm`@ucH?f!=90-MhKiwbTzK}Aa~2kCwgQs9wF1^Z=yYXnl{(UpAW^G+QU`;zBg0@bp$O8 z<0S_3GO79sItk1!Leaz26L_5fUcn3l&oK0}_ycUxwTL%efM-am8Ekc_8KK4$zrVr6 z61+IRNeG*$eb5CxEUDrxzR7O|ZxdEdYgqUr-XSENY>4Zmum`nF2XE&xcLdf!gzlhI zg+ZQ{=_%qNEUzjq`fvlc(f{u%Q~yNWcc~j-d;FQtFjoezJ!@R=;I{=f+~2}c?rmq= M$%SY;{(Fdb~6NN}g(S#)ACk2?3GsSGnhv8U!LyCxKx zt)Yc&SS8pFcHj`4Fcyo&;)Laghvyn_6#VBT`8YH2Jhay!P|B_}lQH%e3b;~Zn zen^&SDDRYZTAIAj*Txw)G5{1n`g(lgRdDmkHSTdTUE}lvX8j*O4spbYlk&ZkpY&$k#?w!fcRFTdpz#fy Cs!Y59 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class16/Graph.class b/out/production/algorithmbasic2020/class16/Graph.class new file mode 100644 index 0000000000000000000000000000000000000000..411ebb6eda2e7572739753b8b52224381fe0d84c GIT binary patch literal 565 zcmZut%TB^j6r4*7l~Uy88(+kYvaoT(rVSh8E2$WRF>!e*H>IQ&(ue=$f{*)Mk*5 zPaYMlFjP`e9J!u;&BMVhAFEIxnzb}; zD5xyic15J3Jhxrbu#OG#5Pj!A57HV8`L65uJc5g69*ksUhD zXp_m&pFy%V7peNEDOmFz u%F`722~;Y}R8}Xby{1NW!YX7!m9Ri7G%_e+ml$nsfj#U~$8bQH!QnUVrG5nf literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class16/GraphGenerator.class b/out/production/algorithmbasic2020/class16/GraphGenerator.class new file mode 100644 index 0000000000000000000000000000000000000000..470d54a397c614f79b8245ac1d327897b477281b GIT binary patch literal 1561 zcmZuxT~k|C6kR8|$w|@+g@&XJB`sEL6VSvK8!4e^?FWrbL8XSK)Q?NJ4Yv(9%*{0hz9&JEB+fSGg8UT2@R_g;ISJb(4u*7i20 z@Kppp_$4$Q0R#p5?i&w{Y|XH%*}0|rX2lf5@c9pr=wZ8jZ8L?2Kcq ztwbQ<4|6%BLr0H5z^*Tw4S{IUBWt==EqmQ)tlTu#@(~X`PT zn#{SO2IND9T-rYv^QMY^Sw+9Hub(`WxW-}FEz=vi8Phf$!>w~(w99Orz~Q20o3qW; zCDXZOEY*k{Db_1StzGEoJ9Mf=34;L6nEiQ5jyMogx_{g-X zD=b~R=hRnOvs)Jksl6H`f!@6v%2pTLdizA$<|Ea`P9J5{M_BY*HC)GfOl29DEvu?0 zrmFjY20inxQF*{Op zqb-P^z2oa#)iK~lfvetjz{j{jD~uv;65(a>CyBzuUT#8`TL>5Z7l%f-e!yR&L+AXN zX|7r(r|}cWSNofBfA|b^qOba1Kw($TyiMxb&Ebs+a HAHMt#b9`M| literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class16/Node.class b/out/production/algorithmbasic2020/class16/Node.class new file mode 100644 index 0000000000000000000000000000000000000000..93647c1c24dd3502481f93c6c3d6c2d1beaf1f5e GIT binary patch literal 622 zcmah`%SyvQ6g`uqjj3tv!*{hlt8Eq*H*Q)AA_|327fQk9w1zqoQ%IAdpXH(y6#M`` z%6exMA0W87_ntdv?mctn_3i0pIzyg~8M3#0#A`ke`nB`!t=Eefk_{1v zsL7yLsvQe6uuPC{YxMCQkP=GGkOE#9VLL&q3J{mGCxPP$gl3BE|rkLJ!-y^1VA^HK2 z;*f-t|GL$1f2yuG>;LjjX|m!Ol~%RGV4SGu&bcD++VNf23om)sr+s;M(BpoGheG1d zrV-r;(v|tWmLYX9h{K+DCge>^I(Q)8h%I`Q2GEBv=`vMJ8mTfls4{s&-F2!pl&B&H zzVHTBWE?grZV_VyUCncx37AtH!*uj9(lTV7XB4g`SQumRyIg%#bGIp$U{XxOKn516 h$RJBUl%swgRjPLAbn#<4c2On-I7+qDut!M4{ySE%cdP&a literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class17/Code01_Dijkstra$NodeHeap.class b/out/production/algorithmbasic2020/class17/Code01_Dijkstra$NodeHeap.class new file mode 100644 index 0000000000000000000000000000000000000000..6d97cee0cb6af1f5fe7c59c4ff6964b3c79cfdf9 GIT binary patch literal 2913 zcma)8+fN*I6#iy+mSvYgS}0V?QYiw$VoO;oy>Ka%URX=Pc3Ub`3&ZXJ1IsMk9q7eN zH1VNojWLmj)&~tQy!fDrrHzfIiEsWF{u`zdzcVwtOAAd5VdgjIoH>{8eCN#m_3v+g zY;K|lxiEb22cc>RphUs0d3{CiNbA;Y$LRFDk+c<*^q7`u_bKqVwv7c*sz6Jo^<1v= zXvat)!dXJ_>$u^lq>B?SSC$DD$SYr}bCQFaHh zOTlg@fo0oFcMR#dxeNMI7!~kKlqwB-P|fgjbQ8By#w}_UR1I%?rCZGRYIs%5%Ti{} z)~%#LYmx8MP=|;DHD}&26e#g9h5I$Uh6WaET5giNTc1y^Z9?*B)bKi*2*s>HWLjF? z&|Bc@Zrd&jq9tFKV;Q$>W7f!q(Tr9NZHOu;H7$EgPcJhcqRfom#K9mAY3RUV1+NsF zazVG}XtQWq#IZFV7u#mUG`xi)3W6)*V{}GAO>2B>CSJ&Hsi8~5Q5>U_rDfJ|Y=;`Q zm$22B%L}>+BwyiFu!flLB(c%$*?yStAw1fP%(6 z3wEN+B_o;1ro!mQpis0&{G8En7U!gcHyu6+4h&F%xQ2J6JtbLVF|%Tb?XZRmVjC3F zFgYn#Gw2{56Pp2uV9L^;5^q8JC<=GRe_MFK%X)Hw82_ONT0fNMIami*K zBoMPMPuO~Lft2@rRq3hJX!godO1F*CY<$+rNIj~IA_-QA;0z-9n4cM;Nrpq#(%M$A z*(nRRP0S-K9^EGeP53bi#?uayDt4 zH3hppFC=tG#)aNS=xHdEvxCSe*!vQaah=31%g7GON|UWrDiF9kAS_3>791d#d;nBl zx#)QE$u@$5OU^mLXRe#)p1EeI3sDxpWnQoFX%T+MPjmDUlxW@W2tGt8`UDl@kFfh8 zDvQS&f6p(D>oH#Up@i2{3_l1Br?D4j(8wuh!Z}=}rp9%O_b|>Ua3@G`ZZ}Neniu+% z^9+@b=ZHs48jdsWxz2UhI8<6I6uwU)!E=Oyrn< zNnFxN-orRm6YA7M)be$K$IZQkD1$>?ii>DrM~)Nk0pfk0m0e>+bFAc+a{?ONqzh2p z#&t}xBo=}xg64zN%RV3Pqg2PVSMF1mD-5uopnqI4_Q!awaZiP+9^uq*)GrmNsSTXw zp;9bdLClx0#Cy>bZ(!(Z(Mn0sffTByCY(agxBtwzKBr6j5#;$g`8dgs#1!eEQ=Vj& zDP&=6A%pEzcmN6NQ>?-#+uEyUl^vDl4KS`#LnKzHp&(LIfpk&4M#D%%WGu|N_pWdL zS!_ZjK?6)2#5}(+3tZWYPC72&0|meb3V;tV;Vppk>)?}Z?WU+4roR9^uGR(S)TzGu z$Qtg|t5du=OcTKPSj;bt@gO7tZyzC%kJVn0G7y(8z^HBdXZySY!2r#Ik$pOa1)=ATX%5>U*SW1i;wUf zK6aov!UE5dr89&81V3u}%ho4mlKI0Fzo_^&Se7Q=lN~jPw0?FWC14LZCP)LHHl4ixuYIlSE>5#W|vW#4(dgBqkdq z6gil9adqA$JYR5Keu;K=;VAB*4_`a^Mcr_P{7!OP$m(PYB(u=7otu81^XBK@f`ek3 W)D|=?_8kuJVV-Yr3-$A!Md&~L3Q=1C literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class17/Code01_Dijkstra$NodeRecord.class b/out/production/algorithmbasic2020/class17/Code01_Dijkstra$NodeRecord.class new file mode 100644 index 0000000000000000000000000000000000000000..b35e1e602efda7aaf298626c848755bb12cf486e GIT binary patch literal 538 zcmZ`$O;5r=5Pbuck6HmMiXs{{8~_uM_;tW|!5B#hCTd7LnWb#BSlgs6{x1*2#DhP; zA0^JBXe9B_nSIl@Z)V=Uf4shpMmWa0jtHW0Xa;5wBV_vGNmL!--c>KUeQAY+*s<-} z;RzvHDtD4dAQ^{lU={{p%W^~z)Q+kRuP1kFx2JahAqag@Y%{);mgn~fn#+KYYE8)M zXI&|!45X1EBzkrb3fE#5H3??vFSS|ju!?FyNVjZPwg-=0>0gVk!xgjTS;FZE-&Xj$ zsD<}-Kq&qQ{XbxxpkH|d-;!sx(#uX!ca$YOV_OE{xfg_StP*mQU8cwcqv^WRZzx|R zPoV!gflXdH0`N!5K0fh2$c!_w|MQGZMmOqBIHxNwpvv|T@k(Kcxo0j#u)xuT#&M71 vK9V><3WvyYW#j7_7O}*L1;%Y?d{T{+Y>rU`%UBubJPMq3Zk#|KYe;?qQm1d0 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class17/Code01_Dijkstra.class b/out/production/algorithmbasic2020/class17/Code01_Dijkstra.class new file mode 100644 index 0000000000000000000000000000000000000000..ed1e703320a9f8224ef6fe2448989e2f1f6e3779 GIT binary patch literal 3600 zcma)8YjYFl6@FHdwUV{wVthd)5C=QPw(J?l*jkZtO{FZySTbw{>Loo_G-l2z=;%xJPt~0H z5=k+%T|+B&(BDdt?w{YU*;qfJ8HiMWbg8Xm&K3OX}6 zy-*l=V)#ftYwRC+?x=bGLcy_h1&=HlPTI7NngvIc?00 zK{)&Xt6OxN?4PPQ5j{82JsKWC7Zaru1-+Xjx=C7s@?H(y=ur?cEoWX3b&HdVq8IyA z^l9kFfC8=Fp@JqOyJQp;w0r2e!A;n82c6MsFk=XBmNx2)}1^n z+0p06=Gsa5`^gv%;BzWIui*v)({aj-6>N#+to65|@aj6(_nPF}&5`yoE8;Ruc@h-LDYqnlRY8Do_YYzFnB*gK}- zDI6#1FB|64GDB2S&3GEmsF>1_#x$MONSoH3WhQaaw1{qBD%DTfHk{D#6>%BVv)SMa z<#Jg#{j7$Qm?wgU<=Cs_1F2cb(nU}x62n)e2B#FX)Ntbm6{j~;gbeGM6gx32;_Di| zA=rgUA|@wWXEf-t72%dk4+$%yAuC};DoChc8+KJV(!l&4A?a~LI@`dq3JB1 z7cZVQ>}U0}IZ0$HpV4#kx^2q4zZr6tO?FYdnqxzxNd?iYKR-qkbT@!e-!=a5q(<1u zd($K&Ot6Z+uaR{^w^*%QY~|ip1Ht8d|;z<=8~m5MWN8K|BqUOMbBmZX_FKu zO>Vz!9D3FE;djl+7co_f|Clq{&9b*b| zbK8Pl*orRh_3&*3J8*)>&jQ+U1|298zw4BEi#M+uco=`cZu}X0T!4=Apj^OV{0N7* zI)M~k#7l&51eaxK(;FeekNH&~{Qy6~PYLNRyo#6cGeX&gU*PBb8sro774W65R;6Cy z-Y@xWAHw(0r9xHFrlR*Q;);p`cQK}d7meQkp!*I2cbLkrC>+4ASuI`^xsqyiyN1C- zIo&!tK2XBk$5>D>7K(@b8XT6DTZ2WfGGCK=^s*kT&2zGLtH-*8OE|lRt?laW8;Hik z>2`H|z5K~w4ch@UGlac#*-eu4@P_voFHF6dU=AnHhdJK$=8?cD-rs~|g5d$m@n|G+ z6GUB*V@}vloL-|12JRxq1y`>VIbNTrFUSS>eICD|hKFGnpPuF$Rn4oS=xV+~O+m92 z!F$+79|GckF-h!v;I0w4>saHv0C$=dj8gvcZ5XE>x`n0m;6Sj1^FHgR2TQQlu*kgWN4EpXianc!W%szsdIS8QNSg|7$4T)E=(#_k*DtsH13M z7_Tyz*GSdZ(aDte;0?ldjZj`EfNPk=o5+x+=kPXcyhGx?>jFGWQq5w!OU(#1rYZLp z6HD;o_%RrOhX$=eS;eA5V$%eQ=3VTq?bnteraz|htMCdL$ zRT$)HnVupZ!t$!(k`Fg<2mSx9GWECA{T+1!Y>(gb8Rp91wP&5{UHrDlhWk@E%DtUz MJGl_;#9t8oA4qs}1poj5 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class17/Code02_Hanoi$Record.class b/out/production/algorithmbasic2020/class17/Code02_Hanoi$Record.class new file mode 100644 index 0000000000000000000000000000000000000000..8d139b1a6a5f61c8f8da0753d7a64404c911fc59 GIT binary patch literal 716 zcma)3O>fgc5Pg$4aS}|MhVl{GLVyB^p@eebkgAtTsF9)~QItb3uy)pstJEvmF2967 z!ofo7p+A5hMS1HYfdoPvyfg24X7`m1WznhkItGU%vXVuM!h)zSE&eX9723 zXExs!$dPSa^017yzzI~QNscYq@o)pHB%{=v3ObWt3J&u$PL4;m>XwJwwyKgF3%eff zT39prT&IFj|7iSY3%jR zXxb)yzuWYkx@npwZRxvpn%Ewv)9Fv0ssE%-rtbILT|F!Wlc{ICySn$B^Ev0-d(OSw z`S0z2+`WrQ+-O4+nnMT}XhBe6*Hv@P9Lboum60cxu3AY~AvkI0Z1o*bESQr7Vk&pl@599v;W##(mgolEvgng#-~nSq5?w4)=0T?RT4 zxrZ~iUUaQ2%{wIu?}=*`ORnR^Mpfa>2>=38Bw*`U=8m zLpSaVVXuLGh$?h7Frg62i@{8ejF<<}VUl3yRwlgA?l-Vs;%fB*NZ6?efL;TActGL4 zths7UIk}|iF4}IIUq#ogm5^C7l9Sa~5+_l=BJ`u`B;~HiWidU=bf@uFX`cZufgdJ~41b zRUfO3)i=>fhnEZ_K}2B5ELsX`Mh2G+ ztRO8b%eqyFY|g((T{W;OQcbQSu4E151Q^I$)~d|s4LpwmeOqQXDyBziU3=ylC}B+m zOGT<5u3hkQa5cmlXJ0h1F2okcOuL`lM z0@C}q%yBzsT`Xmntirsxl;KDu?j+63f?2TTw?7zg(>5DMcf8Tsvyc?~(@wol5@z1l zQQSqIPh(tyWQl3m-%#J*J2cb6&XinL==5T*?mo_S-|N?UzUIi*6@ zkQbnEt%0v1r48`f_tf(bl7EQ&e)1*iBjm^UHLyLOm$5DRqZR&` z#~-iq^%B?Se~A2H@{f^!ocvMpPmn*hJ)d{1E%_%a{DU6sqkYSf3nIStLHyV{v+g{C;w6MFOWY?{>QfG^X&BbkF!P;H)col z4Q}?x*~mvDkKDpkmDA4s4v5$jWF%_rc5L3)ygd4LU#CKVisMpOT?}M!=r+BQO4`67 z7SrJH5IGW|%sgI>ad>F(9(RqaFoc*Og74Tyu0p z<8qbJePCR!7z{%SFo32#y{y1*lrx}Q_6Z5`PBicq0@vS1;_^*A86SKfvzMFwjNHVf z8+dw=rE&Qh-sbBQ|HN!!=v|nMZjeFn)8c=-9HS?>##e@tf%o8SAWZ@18U_c4ZlJj6 z+1DmgzV-`ZL8FR`8#wKmHT_AN_L5YmsFg&fta$fXS-gO5Qqycoz*S~%m3ho^0dqJA zhvk`PsXULBS@g3&;yJX3}@Yd4Z58W00 zALA!{%SNBYYy3LFCI2aZ{X#!~sh@A_=dbm1LqC6~pMTKLKjAOblRx5Ssry&De;t3r Hd)W6s1xb8> literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class17/Code03_PrintAllSubsquences.class b/out/production/algorithmbasic2020/class17/Code03_PrintAllSubsquences.class new file mode 100644 index 0000000000000000000000000000000000000000..51684c02742c3bf689c65811059382dc8328c790 GIT binary patch literal 3241 zcmb7GT~`}L7=9+%upw*j~9l}bsgx#3k)Z+K| z$3M_JFFeOv>qWmj$K#b3{tAyj!{ZU3*q^Gi3(f+x^2ZrPSMArMWa7ZQl0RY$@=8;mXC^IpZW zR|MKTCs&k}$x2183uvkIVlIx|0?^SRu-DID^{mpcACb3QFM)PM6WEJ=I`$jr!U2K9 zg_3mL6Q_oA&a!!Y^x6d`_a;lF`RbDUX4SL{rYjIHR~$Cn69TE!Vs0j1Pp1`gtofPPb!s^eK;a;U`?)?Ima$Y@3Q3;*>XK;d#vE;#&yD(J99Njuj8n|o;vtx=@#cr zQrRC+IbdKALv@Nq1O~TJ6i#W%lFD<;z%Y(8h2@zQ={XgFu2cxc7jP!*&$eL%qdHC+ zcoI(ubk<>QhLEqKbmz=l^b>7#Ma_8Hz%v-5MQp!&-)8Ox^JNu|?l?{h#AJaV<&rZ7 zp2Z~Rx%7fSUlR%&QTk3$^Ku5xsdy@#EeSF{u-`TyQNSpmV&&YgB+xvodGBa1n% zUzT1`Z3~;h9YL_KzRxQyu@%O8c@s+Cw%GBV3r!G1>%6sMORrjCNzHb{b}1i{CT7{o z<}H>qBd}}UlZDk;Sq@1V-)4M;ylI-92-6EJy-+0?QP-pc_BIr?xqk$X?(A)vU&mFl zYCFufuFkJB+kk}`o6c>HOdO@=A0XS%FOqqICh)z^p)MknT- zYNcRKS;}UQKl}hbruI2aan^A>8b+39O|R%IyX`G_H-Y!?zK##n3HTum=^qLH&bI8E z&Z;>aI6pWPr(}W03vY|B8~1V;7$lvR_HxN|`|^&nS}iv@vl{B(GVu}}*(AJ?kj?Xb zXNsKUjl<(F8^^~~P6(bJGq!D3a_V+6T^*kZ9NAG@Gsrr=5a|8)P~NpceK^GPD#9BC zXaUbY|9OdT!+hgairBzih}&#L@NyWWF4zUOjUWJ*@e1Es)mh0XHTe^0`~#8$ccAAx zcg_BU_E+y>&)i@%GjtD~nIAY9^%Hh+P4J43F$t{T*BPMz1wE2IOYDiDzzE*+A+YaQp8}TY8Tk2I7(q8kL3mOAGC-0&60S*J~Q`Kue*ltc|ReW|6W)ETZ;t}4`L!_||IOD@)ATn5n z>9dsaVJf0CKJ+?Z)$=+e0lvY}C`5aRe1*t)jReR=oDg&dl2BY;cQR35FVJn9##R2~gg z?!XgRBT*VNw83U8RnL)q;a^J!~_FWZRO7K{NO!I%<^$|ZsmB}o#6t>n MvB0PJ9A6^&4^ny9?EnA( literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class17/Code04_PrintAllPermutations.class b/out/production/algorithmbasic2020/class17/Code04_PrintAllPermutations.class new file mode 100644 index 0000000000000000000000000000000000000000..89da047fbfbda894204ce76026d2db4a4265d09a GIT binary patch literal 4325 zcmb_g{Z|y{6@F%Sc4t{eQDiZ&VgND10^$dvf|AHa6O<1P2r5Z*SVkCKcIoawB>hSg z+nOfnw`pRVG_@c0yCyxyXxe)6Q-8=${Tur62lTflC&oT^W_EWF%t_BFduHa&``-J$ z_dd_P_Z|J5rvsk~V zuhmhBbqdPuY;wlPIqNAb==mNnoHtA@>W(Av4X(ONCzPlrt zoiev|o<7Pr>;viaQ8PC?ZyUCi&Eyp*+`rpfbSW-9zMWhUyb(uDkn3p~6A!oOXhsVI zvhoLK=j=rXqEqE)MO;Ihg4HF^3wUqU(IGgidFxqI*4VCN2X@kO+9YwY=6*jQUYvsJ zE*)Lit)MJLAjbqiXE!3QVXuyEStFb?XR`}tC4hZ8_Jawqe%3f|CbOB8VUJt(45hqn zWNgO2#Sf?#<`Oo%G1=e|q2hpo>gIkQHU$=lMFWyL9>qZgf$8m{H<9!-mtt0q$0Ri# zcUAnM7I$mFVI4;>AQ(Mk%n@B#tX~jsz>tn%cb6Rz93uioDkbA1I!19^fj(E_n0_>^ z5Tmzg$uHq+T*nEVR1mS4p@yAhmR2|WHT%8so^nj!Nexfwcv`5hEKyugp~o{ue#pFF zi|!d61|}Iyh64(!3ak3+wWkbIFg2XjF%8z4ub@X3^R_w5IJ5JT9WMA*w!=wjLS`DX ztd(;(uOY2t7MViLE!Ck*b5aCp&Mzq>5A~L@2n6ZZJ}Z&J~<)x@Yly%l+u( zGHpJ!;_`moQkxU?RU@{MIzMR4InZc$fi*s2O=k>yK1cZWe1;VEFYW;%D+g2aj9jsJ z_4681V6NEj{N{e&mWStyOd6Wsu()r_n1Ya%nKCaZNUYEY?rWqiSb3HodwpQyl!jLw z+R3SMj*>mg{8VQRiy6%BvfMSm3Eb1CzXC7D|P zDd)vjsdMI6Up8wqp^Ujf)1Jvry{Bd3EbF&t&CuAuIRqtLT`0D4O#jdXg1 z`1eHcTT-AX?56#hjG0TyX=>&*{DB3#EVh+g*6_B1ji0W{)5?tx4g3XoWC3Mh>LASf zGkojdlZQJ(iFcvAO(B2_yvwxQ7kSrR1w4z-^Q}zI0BX@#X+#haj-B`uw3F|mY#{Mh zL=!gfG^7^)n< zd+C1<^}m2G@^qz__!7R%X9P#_9KOP+YSD}5@dBf1qTmPgL6$#KgK!@t;$`jho+&NvWAy5kzXRS_z&vvGBpEug{$(jiIU*PQloFc zC?R_2b*ye{y@f;oc0DSnOO8h<$4qeO=j2-+A&`?8U;`DI?>gmx|Y{V`+h(5jza%=>fig<11_&14H zh}i7KxA1MQwVt2D-=P!~j~$dKP!g0ROGX_u14X=CtrtbfnY+ZO1+Q`hEAK#4ln=4T zgXOz~g$JMu3odgD*`)FQ>C_fvV)XeEqt*fPA(FI()HgFR5_G+lp|v?d)w?Sesjn?k zAMvOcnkB^}w0jOhvp8FZfJd&6L4JFAuKtC~s#Mz@PuzYBYugexaj3xI=6G*i;`UY4 zCE|5A(VvK`XUJ5a`*tx%lKxR5sge5v+Ze@mrtMDB(aAL1#VEQsx|8?4P8O#kTl9pI#ox`+_I@9 zcbD<1!`87PTgQrQ9b3khj1<^f4YleHA{u_6w0+2RON{ZWooq|*PBAA`J}VOO&fY{k zv7z&LVnf~WQWvjurpI_6XD>LxetEK(Of0)7VzBKN_(d?(eha4*TGmiFt>Ar>cdPFpRioa3b?xpyDOP4F z(&TfZOA|Q_JR=?iMXQilg&eED`>bqNUFz*9$LnqH+r06)dg_>9nrpY!?+e#f^crQhQ^-a*ZO E0h(&L`2YX_ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class17/Code05_ReverseStackUsingRecursive.class b/out/production/algorithmbasic2020/class17/Code05_ReverseStackUsingRecursive.class new file mode 100644 index 0000000000000000000000000000000000000000..76eb5d3157700e15b9ca0493a0430e47094f436d GIT binary patch literal 1628 zcma)6TXRcM6#jNDJtuKWt7%n>UR30QxD}PCx|NWY5o+*YPGgHhZgVc3>5E_Cg+JiM z3lC+OG2YDhGyZ^4-#$q+t;~?j*?aA^*ZS7C*4lf2|Mlt1`Z{u0j3R)bhLC|UdIb8O znJZ?dV%Ex;o6FB+$rb3ySvAX@6$mDhOHt^EXowov218(nZ|=EPB~x_G(sKdLa;{Vx z?y7J8Ad2nSp`p(}KXwWvOBK^`j-Ae2sy~)Tryt#xE7EqP?|RpNfQS1@u-$*WBb7fiDL|8E^p1jFmLy3H{ z8O~3?Wsy}G?=vulae+|7bDj#sTeLdLltinbzE7cY29O=2Akxqdghi*n4)V-vq}=ja9qO) z11B*pFyNP9vki;TP#%>ULAs^3#LQL4*zbZ>lZ#$;S=x8ZK6hFjvkJuxXN%AoWrRP5br1iaGImqrV?j3 z8ZCJSXSs@~>qjf){DQLr9Zju4dxg-u)JOE@I1HplKVsJ!_TE#FAs=#tpx~+22%+;0 z=_PPK#}P79VH7B#kmcJ1>bK(@W*PcCS4|3PZ;q=A{DKfVE>Z~K5&`+fP*R*;at?By zBBzP37+%AHT$5gS^sVA|?hm&;Z)w*_E=F2|L>fX&JspwOMoodVjCix=m$04$x#sSPAPM!y`fK*2V l7Lmtw`stX*4Yp#V0Zq*uH7c_R0zWaMK_8%^Kt%uxzX4A|UL*hj literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class17/Edge.class b/out/production/algorithmbasic2020/class17/Edge.class new file mode 100644 index 0000000000000000000000000000000000000000..01311eadd11717170e1d38e2045e5f105a6cb1c7 GIT binary patch literal 445 zcmY*VO;5r=6r5Ko*jk}N#Sc8_4H}eq@&NH-G$Cp5py9rhwJa$#DMf#m2V&yEAK;G? z-&Rc|P5O2wGxKKm^XvU%y+#iwHVhO>Fdb~6NN}g(S#)ACk2?3GsSGnhv8U!LyCxKx zt)Yc&SS8pFcHj`4Fcyo&;)Laghvyn_6#VBT`8YH2Jhay!P|B_}lQH%e3b;~Zn zen^&SDDRYZTAIAj*Txw)G5{1n`g(lgRdDmkHSTdTUE}lvX8j*O4spbYlk&ZkpY&$k#?w!fcRFTdpz#f& CPE5f7 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class17/Graph.class b/out/production/algorithmbasic2020/class17/Graph.class new file mode 100644 index 0000000000000000000000000000000000000000..72d1d016449368c49b40825c50b2edf404926a3f GIT binary patch literal 565 zcmZut%TB^j6r4*7l~Uy88(+kYvaoTZi#BYGucTrO#>C~N+?0}9NFV-}3qqoaAK*uc zr$t$ai#s`IGH1@Y^ZE7mF`dFhLq!IX0$D>AIfn9pzi{2-zN6oD2f~gRa;EFMQHw!3 zJbF~H#862^apZdXH4po@e568wlt%%Yf})0Hlo*P($HVaCOuq{FsLzn~hdmK8)U1VZ zLqTQ1wj&}H<(ch@hE=SQhv+%~d63p%$ah@F=TRI8hSS9@=8Q@|cjHIG5rJX-9@(bj zj24+3{23%`bFR9e^{GleCp|;Sa(&T`pSvP>;9ZZHsx`E^_s9b`>3>K$>bvyw(%dJF zgqEqDVI0`v(oIIyls!(;L4&f)0Q6XrCgFP8ZBRu?%==BMC>G=hw@7ghi7KGpoPago vp*&5HA48?GOl5V9+G}c5C#*syR0#{TLL-ABwu#YZ7TCcqbqsri8SH-p^GbdR literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class17/Node.class b/out/production/algorithmbasic2020/class17/Node.class new file mode 100644 index 0000000000000000000000000000000000000000..2e1a0b35fbd24d6344573ab976d13de8c5300a0a GIT binary patch literal 622 zcmah`%SyvQ6g`uqjj3tv!*{hlt8Eq*S1wu#A_|327fQk9w1zqoQ%IAdpXH(y6#M`` z%6exMA0W87_ntdv?mctn_3i0pIzyg~8M3#0#A`ke`nB`!t=Eefk_{1v zsL7yLsvQe6uuPC{YxMCQkP=GGkOE#9VLL&q3J{mGCxPP$gl3BE|rkLJ!-y^1VA^HK2 z;*f-t|GL$1f2yuG>;LjjX|m!Ol~%RGV4SGu&bcD++VNf23om)sr+s;M(BpoGheG1d zrV-r;(v|tWmLYX9h{K+DCge>^I(Q)8h%I`Q2GEBv=`vMJ8mTfls4{s&-F2!pl&B&H zzVHTBWE?grZV_VyUCncx37AtH!*uj9(lTV7XB4g`SQumRyIg%#bGIp$U{XxOKn516 h$RJBUl%swgRjPLAbn#<4c2On-I7+qDut!M4{ySW2cd!5e literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class18/Code01_RobotWalk.class b/out/production/algorithmbasic2020/class18/Code01_RobotWalk.class new file mode 100644 index 0000000000000000000000000000000000000000..b2a1f5ced7039c58f24421984437b93e57ce8f6c GIT binary patch literal 2018 zcmb7F%~Km?9Dd&9-A#x|_*@{H1ff_A6qAxFt$?(hI;PP;swj>knkC6#Xh@hOR6BTb zdiLZ=4$?Xf7cM%ZG9J8n@elCof8Za$)Z+8*hRw9raZD!re(vvmzIOB5qo02{J;eg9 z2H=6$2N{G0U7%;nx?`oPR&6tt-`FY_TLSt*rB-Pz3V0Kfs{#1Y^8( zbLL9wM!i(NIP=k4^^JP#U8{Oqz`xU|7t34}@FlYROlExuv&!09R#oWZ(pK=#*?x-5ont)7X9j@a+Jm*$PtGW|GJnzn2;#NgnpgUKo zm6vz7H_DB-t&J*Y`f~N6Rb90j6*X>8%GSq~rhu9IH{s?5#4>+bB5$^=2041I3i*mR z1VSqFU35%83D)IBvGBe$&z*$gJu9GPrisZpi2IX}6| zb*r(-ZT(MKrW-5u-A1weT1AmDo-{bA6vP+>@j!iiAYkacCOAs56>PPspCGf z!*|5JUb}vntvY3da7I~EoipXs!V5@p#Hs|Bw9ii9B6|vc0yFG+k!D}QGa`5|^WDbt z1Bod-ndnyto3R7<61DLf(tb=LZSNlKt` zS@;zp&z$tmYKBI+$Go$;p~vY!L>gM!&^`Hkx;Q-j^Pa}*AIgP@JVtki*aQy;&XK}6 zeK=2tC-4#o$zTHM#Mcvd?^ zPTAb=*lg2Olb4m*#+ljf^r+dk+@3iz-5wNXHTx7p%NtrpsWdGDxd+I)7cVmca~Q@v zHCmu*ukgBv>$pm_u44x`@F`xkRaME^5@bx}K zx40(cz+j9T@x9j8=qAgnyzKvB9{m`R9}(+}&OJ6d&r#>ysa_MndrbQKh+&NkKCoFR R%UF_`Szs%e8TGbZ{2T4bG&=wQ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class18/Code02_CardsInLine.class b/out/production/algorithmbasic2020/class18/Code02_CardsInLine.class new file mode 100644 index 0000000000000000000000000000000000000000..0800395ddfbe7d94efe0c69b960f07c8b1bfeba4 GIT binary patch literal 2676 zcma)8-%nd*7=BLAueLit8JtdNXNPXA9H2m%bsG#7+^|^a28;!nt_LXWOxlvR^T&mE zyEGHth2HKz{jFaiuOn8+FP~eN2L!>{$pSh>(u3 zfg>;^bgpdJwc60xfr-j$aWH*j!mh5?vgMppE=mZj4N1_GOWAC;Co3GA4YUZa!1_=a ztvITq%|JU$3C#y-r|tSp<|^6mNl=rXYb%Z!ct#wQOHNrwCyk{gH)hctXcR&KLiGv|VFDg&3RPPsl;uNLjn zh``@tz(TJCS^AOEF<@X2Tx>hUnJjFIP#b0XCbJ%k!v@am2TP0S83Qlw zFAVdbpj1MO;Bw}6X}MUPx0g4#ax_<2u{Rd%sw3w9qEf%<)Fi}n|9v4NEYPl2N!3!8 z;MbgLjnzuDwOVndQeGv0b9H;=?P+_{k1FMOV3r=6tSqoehNWBlIsDBK;abVw}`VP`JGy*usQEUS;&T}-p0~nzWggft+ zE5i8$C_Dq4vVKC)+PMc+-m+wCM_Jv5KDuu;U5LfE5!vEF*$p0Len4laAmtH;$uYq+ zBH0NqATD5xGZPWKgqN8vK}fIA3SgY;3IZXC{uGxFjPo}Ot^rA^{NX_(^%7dqm`OtJ9S@dbDVswi$_OqlTfliWifUK*5tgC^n z%SRUB+rvZF`7|=YK6T|GlQK-85!uG$7r8SUi~Wd>z_j<6ku!>^#J)sQ&ZwqJqodDM z(xw{7_xsN~s`Oy*w>t{QU%cDz>)%E!qZ~{U^i@pt3Hr~YnYm9A(J9{OY0i?Qw1*{I zTCR?4u-4Pm+3-1oh%I_Yzo-Pfj!5LY8ZMYteIx z6b5+yGG3=8bH#MKOku>J+hwYIfhVAaq&>7j)sd5QbnuU|*hNr!gxDkI3W=Ahf4hH> z!656H?~kS9sla`NTw{xDiTggne$1#3z&`Z)vcH2(m?&hl{odSP&`r(MNl-==0ZcV- zss{~WQ7_;NFod)0tn+Nx5gem16J%$QRS1nt5&ac5gJ=@L%^<53Z6FjBavM|^I2(;K z-)Nk9zj4H_U`dF3-epN)rg2O&ipNb5a?37SB#ROGtnMx|} zs^oXY*OVz(kNxVepJ zo=UulEJ&wpM`+ zV6%Oe$^8nd6w5~_;x5+kDfd5v(_lZrmh>bzj;k)yD*eO_i6%Tp&ly^ZpsgX$FB$^9 z*AVE(zCg!$GKt_}Vtj*;;q lO6cmHQj`INK{{fKlkhcH; literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class19/Code01_Knapsack.class b/out/production/algorithmbasic2020/class19/Code01_Knapsack.class new file mode 100644 index 0000000000000000000000000000000000000000..abd9535d2002f488a130289a758287c5a7a608ba GIT binary patch literal 1662 zcmZ`)&r@4v6g}VjnU}u8lklLS0ow{Tyws#YjZ)fJw4-JW#2J(+lZ8Bz2fP{*CJD4| zT(RoP9Wz=-XI!w5OpAuCjJ7sC5O5n_)BT76sJw^l}_ASSI2&&cPNKtu_2k zCqJ8er&SNG=Rf(N>2G)Z+NT2McDq#zIvoKkT`g5hrP6dMjsXmsaBRGQA%TIjUJHJA zlMS}~2LgIp=9(C0pjs_i7{REC3pSD%`wzgS&pO>;i&?E5!gR|~xv-V{upKtLOWk(h zZ_P=(DI4RM5Qwq-vftPVX!bElNSAQg#1$JaVNxLRj2aOaR%|o{v~;Pj!OJ$T%9=`j zn^DPLV6YrEgTLP~q{k`w7V48a+#njuH8A6B=`X3GXQqnWq@^jxtBz zBIX@^30*z(GHU7x%tL0VQPqJcJC0%Q>Ihd)R=?D*fLD;E$6ADxjXF-?I`YIb!>9&@ z+h@rgKk5AkF`B%YAAba0IZSzM9Q90TtK;li(A0wNWu)h&vUM3TTtoQ==Q63RYpfP@ zS9A3zIDZDuL!1SN+013}QMS53kYil)i%9X6A@w`~&JwhQ{(c|8DfIbM=<|3rf=+mN zjh4z9X}nHLW1T4!Xz8psf;VUx5yd!E!#sv3ge1yc?h_Rc`HaN1{~VEzisRZUY5sSU&Wg}N&FroO|+N%GWIXIvv&Fx5iLH9S|()*r!C4ls0j83nTi%eAPHoneY= ztrlYPo{zew8>3d0JwqJyzTeY(2feS8nmUupp2=6lAYo2Yz$p^D8d09&+;bG`O_IIC z{dtdKt#iH&Mt4Ykk9QB5^95y+lCG2L9o&wjGMRlVk}AgdL?o3(sqRLS8q8mhWY(oP zr$g939m4*}{v`1^`^zCrp-o(Jz;dVZu!hAk62j#BFPP$QToGcCrXzaHGEB_!Uqtu7 zpPZP58<;y;z+YKLW0}A)e~GWCMrB3QD=WHLSuq?QCId08vf@au+|P+I$6;LO+i((0 za%^TX+cEUYf-_kB0dD3R*Z1O&c=2C*iuTzzbByZ(@|olsmI$XzKzI4OQKwc?L9Y*r fkz4d8xq!v!`&8oMy+upm6Uj&!l|*hcN5T9*p)nD8 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class19/Code02_ConvertToLetterString.class b/out/production/algorithmbasic2020/class19/Code02_ConvertToLetterString.class new file mode 100644 index 0000000000000000000000000000000000000000..e0c880a86a4508b6e1935129c83da38aa0bedab4 GIT binary patch literal 2667 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class19/Code04_LongestCommonSubsequence.class b/out/production/algorithmbasic2020/class19/Code04_LongestCommonSubsequence.class new file mode 100644 index 0000000000000000000000000000000000000000..98845df0a783ad1845e0d5cd32a2d64a0acd5ecf GIT binary patch literal 1978 zcmb_dO;2N07=F&Zw>|fk0>j7c0Mnx42yKBf1GU4~IAfZaAr?r4OiY@Hm$rdoX=__1 zPTaVd1uGZs#Kah5!a`y)8zr+~rL%D5%J>u9nYb{9FxKbXTOi7)v#{yC=RN0r-p}Vf z?e~8?I%+mCkNE&J=n_T{KKKPLZ8`UxiIP*^m{?xlD&!gh{`q3L*my-ikH+o>V8W6J z1kr}zU*Ic^TCu!Ac&Sj{Xl%Oh1qJU2q7#<{+8UMgrc-;hR&(wP7|~cZ9Y8mFBzl9e z5fT{5m7IG0`piVSk}q6Ku4O9ajY7SVu552t$}2nT^}@S5g>tSSU{-6DT!B~tE1FGb z(+dkR2J1t=#6S>N5Eke-FJ;kj6WVs(6Yxb9R$`DDX0r>-L`4(m%oNLorJe2dLT%Mq zFY%;1Q^`4{yH2gB_N_ysv01DO#4^vA>zqJ;=^yG~_9M~Ed754e=PsVan5L$R?Y^i} znn_ksZ`26TvT0A|QTs~6$-T4aR9mTQRRV-^Ri##|PH|V{v-K}25-67VEYcufm558s zs3`OjSgGvPa)sB5s#jP4gR+FG5-*T%4eDcnOu*0gbKFgE6 z0l}6$gcrH9a1}4{L>YfXgu(S%{4wm&$LNZG4f!zwqg?jj(+{|BU*xWRX>5G#$jFcL zIYie1ZFDzIh#tU64bg8O2Rp)OL+Ehh#y#H{#t1Qtf+!_HOb=p+GgE~erKDqwdIK6K z*-``TdKQtUT>^3aBhwk4erdghI2TN?RE z{Q^2~q)gjXQC3?R+f1Y^B~RKW-KPSsC);G;UgHcyjYnNu3u;?-z;5#xTz+6Or7zvY zKB3-VXxm4Vb86orp?Y6el@JQgDaOe}f&aa=nL_@c~l!lM5?b81t$LDpDswkAWPf5`#X>-dR35%9f?nne^ z-|LP<8y@0K*TTd;Hd_{C_4I;KI=x^`cXZSRJ8oUDVf@C-)v(3!D>GHYmc-A@dyvDX zuHTR74v8kiO9|8c-jKKf^^Jw?aAz-b{)pc63AvZVc)F@N(sYxAi}&-@tv c6KMZ~hZ9)h31-zD_#Ib{S*0Ks>SuB8PfZ+Bng9R* literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class20/Code01_PalindromeSubsequence.class b/out/production/algorithmbasic2020/class20/Code01_PalindromeSubsequence.class new file mode 100644 index 0000000000000000000000000000000000000000..ed03dd787eaa531a256c0a4299fa97278f6c1275 GIT binary patch literal 3074 zcmd5-O>9(E6#nkK``&A(QwoI#l+FN!TH4okN{2E6Ed?whh5jJrFP6wmXNGplbf(Nq zi5e3(HDO_lD@`;;=%$;Rs8MOu)VRO|-56c5GSRp((YVHj@w@L$J1rs_6BD8H-nr+V zbMCp{Ip29--T!2vP(T-Yz3@OYA$`zc2&^5CUW>M+qUq7L!IAMqEH7YmCDX}#w}95z zbk2)1l$-GSPyyd6^Pzk;nI5HiDv=(|k2&UyUWPS3RAH?^MLyFr7R?^XW~0vw$i}AO z9xtk~-oyqUENm30kENoyTxfS&PbQw&-G1p*G?h%pvzdv+(9}pSadj$@jwJ-dWdXBs zxTm+bi3e;(jfpKj)WR>Yrj&kv)Jb9@`ka8?sBBGaWmdz(bgIU7AL_7!fwGBfiENHx z4Tdb{RPV!MXb{+(%A`jVxqMG%Vj`1Xm4r%w_PxA`%2uGNFPTmZOihd=vS*?rDQc?w zGO=jtTr`_h>!MQT$C5dLhQ5Dt*G{IMn#`rz1+2!t(%oFFJJsoe!K(kf#f#?hSpm;* zk3i*6J{r5yADt}bAo}R1d{5J0lEFQbA@$g!9v#IqsS!#32B?frnrJt1nBp+~mSB0X zK8z&B2?$T7s9q{a|6euX zZr_4p|Y=8YhIA? zd90h`zUIWNrZr%a0cEI!YNiS&{zf+jf=mX~da)brJR!st<5vit$v$__6dIE^xiePl zzX4s&)%s=p2CD7a4%^>x1ExL;Dd+538Q})c@3xf%g|Kv#O442HcVKF>sN!nLI1)Aj zmYl~XOScTZ_*crmfq4LHdHy%r=p(rJH}Z1dRG-`p~foh9tHIvu!|*oBGRKH|2YecH)8bP>se4j$Xx z(8U}3Y3nktjtx~uoIK7wb!Zi$oLO=3yClSGY*qzUoxRXyFMOu=Yuy2RVFuML)1pvo z2RhD9Ypm<9E$`9DW&akZNsn;#1o_`X9vvlLdRW5}x}+P2qlzL@ZZd9ydErgh#0n@teJHuz8`|A5auHAZw%+(rm4xSyTNjIVZG1 zS#0KAHPX_#Yw4wJpVE;wTF~v%yN+>S1~k^#=qeQL-B>hMI=1ghW6~rh!-i$h>x^@R zWfY@YMzE-$k79yzwq-D0{R+!a(T;go1}&w_8iVN0Iox@>MzJ{*cnEP$5Xh6nqK~7h zpS2qxH3rek_aIyU0#4%^-!GCrFXJp;#W}Y3dCYU?F4x~v{}V1c#kuI1VTu zYD`_Hy^;*P#E*e0ovv_aS=;$m(ostMsN$C*g$(?RCuyfKrym?LNvFx?P*uQoMUie* zQpF{#Bu+`|5@!(_IaR~KSaRTJ)}>n61L_rA^ZZM%MU;`DrA=bN8Vn|-|rsD z(Er^eUNMOEzn{dXNiiV82@&NqiIJyqPLs==CZlBV7^#;eU&q-3S6KWMo~0Z|n*TF+ zfiwAaT*Xaf@j2JGsr{O*w=|LWEKlS-+tF>TBqy>vr3vivd|H~w+mWmV0X|Nu O|6(KyJjMHaaQqK`arfZ> literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class20/Code02_HorseJump.class b/out/production/algorithmbasic2020/class20/Code02_HorseJump.class new file mode 100644 index 0000000000000000000000000000000000000000..d0c561e031df550e70ef296d226af2e8411ce892 GIT binary patch literal 2871 zcmbtWU2GIp6#k|&v$MNyVeNJb>~1UnY%6VXh5FM{!9t;=P^8dkn#fMOL)p@Ho87I# ztKrEQO?=P&e0ul{@gaNKc|I2yP{A$o z+SUCfXZYMvXL7+LIblw;9G_8MR_>e?fPRc|C&#PQr3O8&RPsqwZepapae(ViVT9Xa zt1L5X{rRcFu-l!J+t|yiphf5-%|RBKe8SMA%=m8Qtd-vyzs;s^pxxx43cL80WkAPs zd`G+uNaK0VLP9DLIedtQbis5z8Bg4THN%PDKv)^r=xxGo?BTkYXyZs6gzy4KRs3cp zdqy>v&I4SVjbBDA9t~YXb>cEYiD>Y1nEFie5^Cf1R|wk16CRM zyoR52p)eZ0iu-z7zz#%1S8==9HqDG3Ffz7bWN%?@n`K+XI1do_u*?FOT?I4=R!%SM zRA6?s<10XMv>a3s`9KDgwgYL~u&us}0qy$ZgBMM{_gpmi-rlUI^>ngjF-J$36JR3? zauYMNnaynr8_`zgU>mxy9j|jXjuhTOBR)nGX2|5X*ohy}j9<9#SML9f=lU# zv!J|liUt)q%ZMYXLTN1x>JDCP2C8Z`M#1i0j$(PQh%N6G9m>&@dPRqF6q5f*<-*;; z!Zqo7`akswzu;qW!`~BPnWcS$^ChjNJg?}xyno4@_WbiDy(E@dth3EZbNk5ie)8PK zd>$ab-8jR(`VkJ}2FJqvZtsfN%j?T$8l4;o_tR9j$Nh9g_tRzFFIW333z^V9q+g4t z=bohY+ZDCnsHpu?MMxrhpK$9$@;-IfWd!i`00sCP#UfDF>Ee+kfEe`y{?1UB@zm@p zHJ?&y?p~p0uj3wN$s8loeN^*t>i0D=djem2r}yhQNuU-bG(MX&s6^}qD`CU19|b>yhXSL#)& z$J47+kEd6uo~3%-k5|i4yidi;{aT_{N7ULI4R?Nt4T)s^Ej;rzwk(VredC=R-{cAJ z2S9_WF_-qwP^2U51!pPT96Q1}_Q^3{lr60N13agbEBW8XpGNGiURMdR=Xz0UIH+uQ F{|y7xwh90M literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class20/Code03_Coffee$Machine.class b/out/production/algorithmbasic2020/class20/Code03_Coffee$Machine.class new file mode 100644 index 0000000000000000000000000000000000000000..8510f2aa00420d3f514aa59425dbb27a5d80a58d GIT binary patch literal 504 zcmaJ-%TB^T6g>ll(pm*kd;y|~3t%Bcml6}LF*ZRok&w7Dr4BM!+N3S=T`q`;3qQb* z67N(tCdS3w*UUNhoca8E|CrCwLPbXcNfnBL6w(a2k^N#fT-$qU-1JA>i5Su?;fd&! zAz7{UG-RNu&C-TZUBCvT8jBMUpUN+XU@Q#(f@i?Y>KseA{cxGjz}_AcL%ioPin43Y1Re2ibC^ciei_KUH=l zFxzoFC)yIo*3Eq#dFUDn2Cl#mSg>6ghMOC$u79XD9>4ASM@LGnzLfTf<0%0>at7+P z?|8%!R-Am*z+9Y}|L6zr_UJ8O9%T*J3{+4RSeuI2^#|`|AR|8z(CkEEmF;?OYF7Ia zw`pm(Ay7$XA4ZPLamICW@oWNfJx;VU9Q0MNC;Kif<(_X#cV7lhtf$6YbmD{p=Jb+d z{I)>GeN2K|a&?2Jx9f2DeCKH}DL%NsUne?%*ypo*7lrIQb31vgDQK7ifINgLMjg z#e>67w4cX%kzg&2;!`YUVgdIO{0bH+WlGz$Ev5KRQv710`4jndzON`v0-tZPm;&cG eaa?`{_Y=N~2MMpCPF|)bj~Yzq+)E7&=zjo+XxyCu literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class20/Code03_Coffee.class b/out/production/algorithmbasic2020/class20/Code03_Coffee.class new file mode 100644 index 0000000000000000000000000000000000000000..a9c816b61ae9d8fe2345dc04c5dbd96d119240b7 GIT binary patch literal 5442 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class21/Code03_CoinsWayNoLimit.class b/out/production/algorithmbasic2020/class21/Code03_CoinsWayNoLimit.class new file mode 100644 index 0000000000000000000000000000000000000000..10f56c97ce8ba1dd13557e3a6a986e66617279ec GIT binary patch literal 3138 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 O*VsnT?KIy3%=`l%jWJ39 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class22/Code01_KillMonster.class b/out/production/algorithmbasic2020/class22/Code01_KillMonster.class new file mode 100644 index 0000000000000000000000000000000000000000..aa25ebbbf3a10f9d684c73a34b02e5351c0334dc GIT binary patch literal 2504 zcmbVN{clrc6n^e{zk1iL8>8LUcJ9M5I);=L+!%ubV}SeU7;K<8l-;d$D|GGBb^?AR zCJr!=K#US1iinsjQ74i3v7zw?5)$VB0qUP13iEkyOJNcG!8Z54=Y7w4&wI}EocG*c zAKdt5aS@xa-#`Iu8e|6)s1iyJo3ERJxS1FW>>fEB9nDBkH^maMOh|&w-$-*Eb`6FD zg>XnHeq_&YlrI}H@WsiDMyQY@3;8I7CibTAm$o{U7-HXrJV#pB^* zBAtn*BxsYV06YaQD(>39^7qg0nZ4i1tlQj6_p|=180?%X*We zW_-Vyiivq{QO=CV2&S+1>7chukox#^@d@+kVOVB7PN|!x9U(gsiUu;~=#j8FnR6?} z7-A+i5vA{f@k!bpHIEB9BIF4(M#S9yp(jB`y_rZi(|u=FWVT{uofuMMbW-+&eN^^^ z&0`$G*`dc8^h`9J8Dtz9n1V5ooJx&Gcg6%9<^L|PHG*T(UCde+KNZZvdOy!ufHR4s zvg$`j-%=<*OU?+ep_Q^DYk&=CO&<9QioAU3KKXMf#n-&@@G0M^ zIcVoPd|uBSidq%7a=P|(@*2%;))8(-A);~8MJe6-V4$8COB}i0(luct+BxF^ysYh3 z7){trsesl_gs_Fa>bZX_B?a4PDWkwC(Hk#aF34LvL!~CvJg)hHZ9CE7Hv3AGNdekd3>6-hncnw49i_c}_X1cs;A( zfgfJx=3%r|`8?`4?_kU#+Yq+rG79B03Zc`=sG1&jSQ&{toKPKGWfb3sEKB$3-Y)J= zHYMpRCR9kH`TxXS9`?w?w@_BFQK?jHL7UMpx2P`FcNJ5Wic1aJMEWk(%AYFDrFpJm z(B7)sS`3##BsRD-ml63G6>eQ@kRw5BAz-%ZGjO@}?0z|7dEnx-L8xw9zFnGI@1NE< z|9V>G`%Irs#{%J1${&ktWGED$XPvkT|pEZSeGkVaDH^N+yIQedVBxAGj2A7eHSRlRF(K+=K3`?? zc~0i@Rdy*?Wq!Pmon&0$DcO2ct$M40;glYrM%GX!{mmYIABD11S9%Z1pK$U`;@ISJ z#GU5{MCX|c|C6{APbV&t!#y|1k${ja&H`q?OJhxw%Ici@;3KV21fu;j@a1)<1Zwsl~N+P$B$PN;@9h0QsI0-qAUHFD;-%)=9 zJ-CTpi@d!AC`_8gr4U5DmnUi=Pt-!5sD(UHvw5Pfz&%;aQ=v8lw^Tw;Vual1vn4%ag852&)bgo{mXcn;5cPaQeiqEhe)L8DM5 z1l^_bqUdv2*=BzzHnkN#6xXyBRoE*EFI+?+$D#`#p;<ruP}xt$uS^EUe>#=*Zc& z)6GT$^mDd{w|_6oYJlx$kPT=bYFOlrEbbs)B5DVi|I4%*!a@Gycm)}}ilel98zxR* z#KQRv_Vq^eS(vKaxx>O#)R>8pVZb+hLjWP|IaRK$)H$+xwWWUSAM z^j++x2Y&VO4r3LK+Rjt=P_i-FV~o3<_=*O%0rDc9s2T<&@dFmAbv&GM#b&dKMdNWB M!Is3V#dm7oKd8^OFaQ7m literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class22/Code02_MinCoinsNoLimit.class b/out/production/algorithmbasic2020/class22/Code02_MinCoinsNoLimit.class new file mode 100644 index 0000000000000000000000000000000000000000..01318efa3eb534147e566bf2247ebbd7d5c7ff48 GIT binary patch literal 3377 zcmbVOU2qfE75-Mc(n>?>qNg|LOCO?^mnn#amGXpz6?K2qL7QVb(lnb`?x#x+^<1Yvo)8pF$j*Rdmpo!Iq-)J885t_28vG3bYHdI8A=t`bX;a-v}W4;?H*>_Ydh0DQS3*n zjw@oX<2YoXqW#U#z6(~2k$I>`t~0_`R&C| zZ@>58-dhirFUp2)+0Y>zJr_e7hZJn^0qHN7%?pG_kQ2nhcs_YNMBc=5vcJn zhMtK1AHTo+$pG>Yv$&L%~I`1WtMwK z=qg{LU=yu*^Zby-atu=#Hwz04R-G~FDKK$H$Ec1Roz0t4v5l=0>v2pyk0zZmr2L^< zhVnGsY+h#%PjeaGm_2XlC=m3~;zBuRov;O}=JhXOQmT*Tf2>$^D{k2=4O{L^F<+?< zp%R6Q1s&(4&RAs6h>{=>Is9<1(cl%Vj0J=$^+7!tcs5B zE7~OUv5h7{rs?t^&eoL07q63Li`SM*2Pib7;OI?lwVT_V1!>$11hro z#(V?3j8mLNS>HIyg~;N>B}`of8&86 z>P|Md-@lH!#8v3(GJ^5?Tk-lnHLV$1dvkIoaT6Ww&DvzbpXPaFI%v>p2^+T=nh~75 zi-x{MORX+6Qz_sS9 z2&%W*?;lNQlg#OlXbg;WCQ_=J)g<5Mo7lvup~dU7UPk{;Xn9e5gh^GhropLreLAG3 zbwh7AwB(Etyos((L(?WxMzFS)Po~30SP-f=LWXXH1)_9lQ71-!rma|pvWr1ZZ!c=q zhAbJ@w2U3|lKqlLd691mhI^V^5x?CXPQC1h=w<$Lm7 zYJb4_+w7~CsQ(%5KA^P})mcR8aSOiX!8=PT1oAL}JnTWP)6;Pe@(|G*^WY8gp_uX@ z*XZHe3Jup*D(XFa+oNF%-obZBpXw2^7tzq?XjF9mJ;dfm(3D5emCyKZfpU-p{ReeE zO?)_NG)=Qir68~W|1?cKrfJm2`7txetPvEx@*knw*Lbs}khFWnl*A<0YBeFwC+e3T zQA? zXyRUUgm>efc0}{QOx!?grxB#OnQCn^+oW-t?7mw4moI5!UMc^z^H;=T?d>08X$`a8 zjIhwMEay`!(bMQ=OX}ggpBYL~%I$9?Qm=U#gXm0BlAi&Xl=!C6-Y>Bj!N!G*LW@ zX+H+#HUr*3^_7M#y$#!s#=H7>VEn)xq`Zc^?FQT$(9&)ack%3z5El|eKCL&gncT(U zbl4Yq(-B{IAsscsM&vqVh%TW+d>*6EChk4XiJ{-Ypp4<#7~!~#h}YvTiSYX zgE3AKf*i@oGXsn5`7BeNW|A``%f_?pHb*f>d^KYSVAv8!&XFSkC^mocDYn@&Pd4}|*6TBuir3iPX>G>7*uPyW=fJ-;J z!t)CpRs7T|8os=|T2eFt?zzaQ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class22/Code03_SplitNumber.class b/out/production/algorithmbasic2020/class22/Code03_SplitNumber.class new file mode 100644 index 0000000000000000000000000000000000000000..824c68a60177087c2b5760146aab7c41f85f2bd7 GIT binary patch literal 1669 zcmbW1O>Y}j6o%jN+_7VK(xi3mB;%Pjq)BSWU?)x!5Qzi@%(?fT&*z-$AO85} z+g=Z=crJnf)DVOY4M7E?d-gp$+pwFv+49a_z1md}Ty>gGx1c~xrZyuOLO6toj&slz z7}bW|>Ev?R^;WGuzxZyY-Eg|M4)%BIu7Xh8ZB^@?jsh)NET)PfoTrnmtzsCXxDdic z9Z_6*B4*`&r(55rR_lO~V(=f46`4X@#~8*Hh!5=h^e>WhAAx~H z2&N7TmlZ_Mu=R4Hr$*Da@yeOh@s#wX*4hiw_f;L!{dJCNvN8oDC8t^U3%g_QG`MrI z)T-KzP1|+ky1yy9?>WrJEd4i^6$J{zD@6svm9AZV|5dx)x7O}DZijWNZI=OrTbGMK ztxb8~c4!n&Zuv;O29bx;++9g+^4xZJ88>>yF%P?*qe!K7;8yD!j?8}S-wn%1U_>#* ziIATl*f{Sw!&R0mg>P-{Ybak(2w=9a1gN-1S@#u?M2f4h>=1XP@f*~Z#!=&AXzH;c zK7l5Vh4B!fV{WUSt2myLj^f}JB21bxT9403D zp2cM^lR0W#px!ggM3vEy@p6(K-Wj;+&J`6DRUky>qo8nWvV2bU6MV)zdS(wXOOtX$K z78B{1ma}47EwjBW4mDc*LTf8Vb6NRMhk@RM-gjw{Gcp4Pw|EzUDdu#QSHWn?d`w=(i+lCe+qXOHTS|Dbwa}_|lbAX^PU|`ulgb%uH^xuGiSr e*E!)8FXy=LjdO9GURBn+#GK`?$THUfJo_j4OcZSZ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class23/Code01_SplitSumClosed.class b/out/production/algorithmbasic2020/class23/Code01_SplitSumClosed.class new file mode 100644 index 0000000000000000000000000000000000000000..73641dd20d8f0895f2449cde02d2485d3b2d087b GIT binary patch literal 2790 zcmb7GU2hx56+O${JY zTz0uK>X)J@475OkAm|4WplDLq4@Ln4X$sUe(o}ElL;gpcKD6&fT3b1HNn1)S1SkP< z?#$e|_uO;O4E6cLPd7Fza}x!>>K>bXtK6)4VR^k?sQE3os=#Ole#LFIXr-5m z#o|aYi7xCm&~0H4dK7eR<(qTDRVJxBKUScp#n(U|7nYWyL;V)^VjtlIPNVAABRFRg zIDnLa0Ski|`Ud*)wN~hgm%q*$>{67+^C!*+UL!1rf$P+#djK4?@C*(q*jsnj+=Abz zIN>W^xJs)PI*pLX?R0UZeLSLtXT8SCbP~fjV&GW|N0C<0yF+}I(Ufcw;>iHQwFa6f5b3ePEcs?EabAaJgc6QN6J zGV#2H9KOTUfw!{C)H-<=)=hlR!U@@lRhu%+TbKd6nv61c0!7{tu-EcSaM8J3<4RA-uQ;_uC-7w6S=7Q+ zkF-8r`c~~svvrMiHc%l<#dTFPYaNlXP7)S<&(wtz0SbKMHChL@HNn)Ec7Te*?ka;h9 zb=SZpa$EM-gNi%r2^j}=ydzl=4wd_Y?}x20aGG;&xawD1yW?0%Vilf&DO?L

aA%*O8pawerM4-k=n&ZM#fH(_&#RykI=vz*fgZS5|0 z{V(Vq#_A=v{d~grp%43!;xjysfe7?*=GlY8xIlm^cMqaWOOxCk_+nj*;EVM`TCu1Q zcFTN#VZu+yOVviM{F?Dhp8oLvBAj&RGaEAl+A{0>J9=aD16ozu^IKd{bGogkZlW-5 zYufUZt!Hy_HD_elG+V!kePTS?61$pR&KX>wryaKqGO}=8XIKArUE931`SG|qmC9~$ zG*50o?MXW=zTI6oLhD&J_6RvjV-h2*I)hVuUyB$cPg%T)V_4>n$H)CA+S*g1L?YRS4t$oJQ%??#ZQMZb*x+5* zsh_XCw{Tr0SN|USBR$&E?~jx?%`_|Z&hbYq6F25ulVI+)FAf5LuS`xH+DcW^jD zcaKYVFd}ckc8CQE`3w^m*v475?8OLTKLhXK4V7CdWsi1978-XU_7FyN2k*0{1YX1I z9UY&gbAm3-?!J8Y)Xbiv-6xr~XY3BLkKT=i4rQWG-pykt;``%waXe?p@ZFqg8@Blo z4$Ev>iZJfrl#FJ3?0JE)ZXpppIiE=IGhEmz>MZ0Rp0h0R962sgp>tfB=j~l!f#<2E zm)X+`R7Dx5*#S}1Jk_$u9$X^(4reP^f=@j@Qspoimk#MX{d`13oH4TWD)C`ELDj!O z%VcjZJXU3sdcQ;@D(cjr^fXRYF4Kw;)7#7=y%#$Bp>FahAGXU1Kfr%*PSmHO!rd6E Wa5N!17c4j*a z7^4hWH;D~tk4{yi36!i$wPrk~l_J`v+oW~cRHjK&t4)2a+n`+w+C!Rz7{mL{y$&&h zRx99p9``^0yUn_Une47>+p){)$_ltw z#FO!CgMd=KV2ckPcy;*vm;}GT+^&R~$wZdaHKt8dwieO zWF~eB=>6$bmzBu~c&a;^`Da1150f!PN3kDMQ6eyT!f>mZ?V+_kbB};lEoF5~6Hq%k zI@l`{m^vZboXlF?R$4g-Kx!=aW2RK6^u?2MT;WF$vlv9$OvX}ub`a~ln2k9)D*d<{ zRky_4zBiM#q*Q8vksB?xp?Iq9!E`*CZO^7Hv#-8{rsnxEAJqcW`^;XeF_r8xvs>fY z9`-U>Gnr+aMs@Q7XSuzZTpLez*ZUAcjgDGB79uQAdI$ZCxnEk7DsERGGZ4ZeKNibu zaa$>wNP4hDz<=raqaU1l^5RPeFOD3QQp==NSZ3@VKkmhS0+XCwSd&hhd$}iaZ#$R> z59$GdxIT4R=Eiac25$7=b;73-J7wSF|pp%Uwl$npJttj7icpY2IrvAx=M zv{|~ak-6h;Z1JFln%h$SnK>RjaMR)UU;Or^?;WR%#E`(0mUz;7V4!b@mELUbNN}d4 zCDmmnwwUR-9Ooz1Y)_oqJiq1tLSQ{TP7W}!qM1E2on}BCvYU~UMeSL$tGCtcw{`2- z%D4TCz?vXNHUFo&v{?xum#JFH>8$cPqc!o$uM$BHLQS2oA{EFBEQ*Pa?kcUkM> za@#6Dk&|HwJz{@tDwWM-(`J9GmF-EzGE>~x?ZX$aN5@_X@_hnT6LgCwcc*%-ItR@T z?$?`L*;JZvda4kvc|k{M6S2|U8l3}`-)qbg0uqeA`|_*ImZa*C%(KG4gwsZ+Ww5E?syqKc=XDSrKFeQPmaITv2x@5DpGwnmw<^f*i)=TesnM9mgaN4R>c$GgL#nC9n_!0Lo}) zI^8cvfPZJ9f@uq)n!WpYI;`So15XE;lP0sa}ZD&scp$(nvDfT85L7Ti<;08|*A&M9|tE&^aQbzTY0I~T~rI@K(5gJ=rp>}GC z20nw#rrP-nlq$twQtfnBb4JcC-*}<6IT%^ITmjW}}O8E-V)_8MlOP zvzWxVrV*i%$q5*DWO9!5aNEQty-UgN>+lHqyN2o4pz+^z7UF9#u0!R#Zoj*M)uh7Y z9O*6jH*5Hq0`vgh!xB z<&t#os5V=Na7dMGm0V)An=y>UxJTP2Jd!=hAW7hGTb@XRSaz#K{{2ni0?tXUb>3vw zum zQD(*jWgHHbb#9tur)!t)mM-&3|O6_S%IJbi`t_Q1($~5`$8`h!=JVJkK zCnCgIH)mvpQKU{-?8!f~u#-JrbNP`bZwM~Cn)u=RkK;Nk1HIx0Mc%7Jl#q66LM=68 zE9q9n5CS#9a8&&|0SBSvhrnaRaTEM9#|c z;oQNj{Fd2VK8NUXce(o*hnq=$Aw_c|$ z*+dH?@YJrDIp(aWBfIqb1>FE{oH>h5E!;4qSWON`rhXSPjKH~Z575dN8HfBI0f7UwcL?SG1$H}ZF#rGn literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class23/Code03_NQueens.class b/out/production/algorithmbasic2020/class23/Code03_NQueens.class new file mode 100644 index 0000000000000000000000000000000000000000..38e474d1ccd1565b78864c864c2c9e9dfabf8550 GIT binary patch literal 2310 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 B5hMTr literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class24/Code02_AllLessNumSubArray.class b/out/production/algorithmbasic2020/class24/Code02_AllLessNumSubArray.class new file mode 100644 index 0000000000000000000000000000000000000000..22fdabc6321b20726272ab4dd9d27af0bd888cd9 GIT binary patch literal 3369 zcmai1T}&L;75;{q+1cF;=FbDgK!RLEWNA*jjw3R|o5}`gtZPk}bRiD}_FL6_;Pkm}>WcuBi1(uq& z7CZOMnRCuP_dDOY_xd-tK3G{>Ll0gHqYSbJMTd%jgvyKNB{P~bGqcf=nTuA!l@RE$ zGq&3+L2hdw4hOmx1pi9`XX+C7SbF@jDPe@SP1_#>*h3yU<6~a(X+Zhd25_WnX z1=mhR<924=O2%!+4WkmWc)% z?8AO0b4eJFT#!)PHds1kF?P3z(5@qb12i_1Nk2WK?e^>hfR*Ub(J5vNiM0&ac^`m7 zI_~zh%%P|a;;@b*xQA89o0()b?WO!s2>0TshWm6JL-&@VjV?H@C9JXqB4qd(*xBgG zJQqFc<}EYbT@B#4j$Yg^p)PICTm9Kg!gMEWcaDsPku64>ouBZ(NYEH7~BlwbzaZE7XygfT7h~75o({==Bbet8RnB z@OoUwc}zdrG*l-Z;H% z*BpW8)Nw1r&ZMy3nJJ-A(x%O!wr#S+dxJ^*Zf2aj{h>$rI{H)OeU*`!kuz_-Gd)3l*Vf~YbY_*P$@kcF_g|&zSM~fpvtj;9McSqaR1r} z@cBZ$vV@w~(Hs#%-7nFwgr?4j5$L=QU8r_X+*tc_y< zbymDOU*M$#yj7GF!wT#n!h4Br3+vp(y5i_;1vAb)&wYZPfQ> zvA#|C6AEO2!fbwz%al~+@;i?&0X)Gtwd8|uwXk8eKr6wFR+N`ZYiLAJ!;>V1hD!cP z>`zr~3AG$hn+%^GJe7TV;9U|@rE6>%UAvU&=jUHK-uO{?c)j_WI}C+i8oVzXLUP1w zp-(z~Mo+(mc9G)XEhCH*Y=!|+`(c7MK%fRaIF4|Zs$yFRy2tPp5?cI=;j13q!-VUK zNB12pfoKMw?&T=E#jB`T5lK#N^E@vm{}fHcrnH~jZk2l)A}iNW_Y1@#4V@pb99Y5w zixN5TSL&89AhxH{Y=;Tp2;2Q6c5!UxU1cB3E}B??9H3S-G0|gL{pJ)PharE?%g`$7 zMWcNUPx;A6lZ+-dvn!R!o+|w6c=cc}r>%Z;32_h2rfZmLXk5ndF_l0zdWgmX^sWn$lXcu%4UJ)H}eN%fTWgzu2{q u*XXKh_y+k)=>LV&g0eE6qkkEm$2U0!3Hb~BeFxv;TbR=K@dI{e{l5YCqUWsu literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class24/Code03_GasStation.class b/out/production/algorithmbasic2020/class24/Code03_GasStation.class new file mode 100644 index 0000000000000000000000000000000000000000..f0caed75f90e56561f8119e6f8c52187485c4568 GIT binary patch literal 1693 zcmZ`(Urbw782_E#f4${)z~mMR?T{&~l&!@vs{@8^IA*m#%od1XBA51p7fMUovN;o< zB=JQPpG=%D8_6;g7o&+`i!Q_`v-seFLE4H(wLbN4=6)8xv3x{WBp1VHyZo zXo4jW%@>_&_2jAac)8#X4!wQBsa~u(HLqL}Fqg~a!r4m2xhfD$%xCAb{qu7M4hgh1 zf^5{hVmjxQR^39*tJXpYLy@A@!eKlmV0hK@YwIyP9*VOs*}_ zpF5cHh=Hg;>mzfvRCAZzN(de3vJgX@5MHS^;}kdC26|SacUyScM=uwP5?%TqweSp{ zWipqg^YoHHB$3@8au0h%BJ^1}h6J6RLcveZPCTBSEMgc*3j;EmDZgdHtM~;tVIk#P znM1=Wpvu|`G_zFh)W+JPTe;*c7HK)0E9af!j8pOCde5lV-tnpeUAh15%m`2Bozi%D zZN2E$+;Ojx-|$#U!|zd6KzJOSm1T!efqANGzAVeF%AQKooIseJ&aX~7>y5|;MoE?O z(o)r>pIG5o=E!qQaZD1;sZ^+4VF~@B93TMmQk)V4M*jO=Of91yD%n|v3PQ43$4fFL!Uv5-`-Tjt@@vV+w@QxsGURv zLX=H7MBFw~BtkugmPVu`(So#Q@B&W|7cb&8XQ>TSW9`Y-5#Hzk&d|!c^Z-EvVN+uY~n6}A?H6NmX55hJIpTmsmc2K<} zVfO5H@H(wrAD@--iJ{Gdp-n$DvkGnoMJi)#noQ!OsQxv}sWzHaLKpQmHo%5~2rJr7 zt%EN_lmuvJ8@h0gEqjCWEE}_cZg_lDJ|xFJq1QF8ucH??(T8vORNO}bKO>3X_!Rt( z6C!|=Xu_bd(Im7IClduL=Rq}rtmS3;XHR$W_=$MxWH&P@c~|COdVNfBKhO*y~aIB zvK+#7CZ`*Coqr*u0Cv&;Hv(c8oe$7tAS|@LT{PGE9ie@W+>q=PJkV|T{ly9j;>k-k F`7etBMrQy3 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class24/Code04_MinCoinsOnePaper$Info.class b/out/production/algorithmbasic2020/class24/Code04_MinCoinsOnePaper$Info.class new file mode 100644 index 0000000000000000000000000000000000000000..6bac78a5d1b8a78f9c99e7bccb5f03275c74ac19 GIT binary patch literal 532 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 J8l(mz`|n@fQLq32 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class25/Code01_MonotonousStack.class b/out/production/algorithmbasic2020/class25/Code01_MonotonousStack.class new file mode 100644 index 0000000000000000000000000000000000000000..d01d8632e55b1fcbd24aadbdbed897bec343038d GIT binary patch literal 4841 zcmai2U2qfE75-M*^;%}Jjg6tQW&TZU$;gQlJJdExfRG?!V`?Z)a2i_uomqk$%bY09w00M^Vu*4ry`%?37zH)<~Nh$Ry(25!bJ;+}0~O*@?x zqrHQjFvq?5&PBKtx9Mmz&@O?lnlqvxLeEFc+)nFZnsh5R8u+FY_mnfyfKG$y-$WbD zp&_wx0f+bLxI;npoa)Wlta((NEJI8Z9Rq{66?f^_X5enzQwWBGpB~d@BulbpYA8MC zr0K2z;@F|%UIX3enFqGrM{~9%Qt7-z%rz#FZrPP(qIcU_%N*;h0?=z<7rv!n`ItFs zZB3^JO}jr~k8qT;&6J(HF529iNDb4>-Poh!+XnWczu?n+{R*^vx(smyWc!2M`R7;z(b{cAIh6a z1%XD&^Iy}xQjF7@-gG9nT0|c7%j$9k^wXEsDZ~s{h}g6N^xv9UjMxK z+^4U+#tM*tkWji4DQjnb?4Xt1V;)R$rm8zVXeRfX*@S$1ld3(EV5(Pje|IKAU3K!!vsj^7B6dv`cNxo-m#4&QVF1g%r&5j$H z6E2dQ-G3wDjYYza8=jzZy4bbwMsYikJ7Q+MsQc})jE)nG_n65flslL!%8Gw5&y1){ z202h(t$dA{iImXbfNO)pEwe?*b!Jhd`4VX}JIt_EFCa`)Y%6E)NsL)J9g~FY?sPso zXx*If+Z-gF^CCQ5%(R}Mt8_c-K56CFb*Iy#`Ap~a?iS6=+qj2lTtK`y2HvGp ze1~}|wwlT0ZeBN?rT9IoLE(*Q#8W9NyH%)4LiHg*b)9bunXKaiDemh*dmQ-iIG?f%==eULhAV&{V1i!(;X2M72b5RgrzG%h z_>%TV=)UfY2;Bc67WMdJ_2EnBaiDn$##!tL^IiD|ESQa8_ZOaB%A6g!L9YJghVzt{s|NoC+~h-X(sFL38#;k3Dn zD~*iJf*z=Smj6ousqKL ztTJ2#*f6!ZXT8Xgd%|g`p0*bW#!5&2j0fk9sF(-mHXRN7l`r|bN5`%I!3JMj@Cpd? zpf?{V%oF5n_FRzTA3RH=&-YAYOYKvmr_=)J_`;i6L#fCm zip3)J(RR{ABoyt9gh&;R*x#I_`5m5!GKj!-)?u7Xv4csAlL@+6={-!>PNt`qN!*1y zIJXUbPT*tY#&V`u>fT4GN~Tp9;5O=di6fO9(%`MqWTyW~o?)QV39aH(c{S88QLf`< z)^^2JD15D>$81SGk54nFLLkv1kA;4l>2aM9=9W4-=)Hz|9p=2;EClE}w#q=j1|a- z8ITL&L0`<*u7=d1cCAKx3BhoU77d4@=MkvUVv`6=Xfu;DpM}%|vMw8HXC=yNw06}I zVMZ@ULaqLK=B`yOWbb@Y_WI}=aDXLeG7ASCHm)ITY6+Z`PT$69|^o#bx$``8|?i+;p% z!4&!?6ejL-&Q0MyX*`PYc!KIr@+v-o5U;>ByaI*EmQkIL!4-p~Jz47oRKgg5?<)JL zE4;Ga z8h78xPUHkNO9@MOgc8Q_D_$TH*ql?iYzB#CDO?}VA7iH>sFmQYggV2mnvUNPfeh`J oXm!x{@_(^X((30eB(33_5C}=?f6Kq$;RAk^aWsW#e1zct0Dw$YssI20 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class25/Code02_AllTimesMinToMax.class b/out/production/algorithmbasic2020/class25/Code02_AllTimesMinToMax.class new file mode 100644 index 0000000000000000000000000000000000000000..7ffcc81083eb77580d9477d40ab60d4042ad2a69 GIT binary patch literal 2396 zcmai0Nl#l>6#lNCpN;Lu5XUwl#*jI-19n0aGT0EvKth>PrZgdKc)$xh@KoDGNjJ%Y zb)>3NrDjtlUC>3P4pIqf5vo*m(;v}I7gg1$>ndvEe)pNdp{;7<_s%`{oO93lzH_em z>D9OEr4o|JyJ3Ukgk6IQhd|xDepipD^vrC0XlmY=E($o3X2vXb3Mk>oxD!+M~eFNf*U?4^07xl1NI6y&BEn$u6W-{=%(Ch)DS|GfIVjz3j)4yq<{O^ zav2FXoY<#fKMn{~nVI6ao?0}l5KO~|LmCdt5K1nalcq;Cgc0FkcctCX9f3f&w=(QT z;f(9UF%2zfmFF)OSmKfJKaa0;-O5NqT*GmkAjWw;Gm}kQ`CM{zog|w4IJ$0hS%QM5 zrH3w@!C5EHX-FXX8dD?p3q?aZXBWwrzkIrxjbF>N(2-)^(9?-3kU@9RC=~Zi8M9`_ zjV^RMaY4gHToTxA0rt8NtIx>@DH7(dtcfAb%xoeu?nV!;IB``&FWwYro=)k7LffhM z#q5l6yzO>(Dm7}RjlzJL8O;vp_jn9@#mMM+V>m18?at?Q@@Nl7Cdfh$`ZWw-kP0>f zQBlJaR+sePnufPFH`=N&!o8lci+%g6Fec!!s=C82mFU~$;cTORGh+-crl*Yjs6LgV z#@nBr)>Gqp-jwSNrM)<376kV9|4-@(0m0T1z2u4=%)o@ZAfIBMUz006pBJ!A(4yLE z+yOnec}T&0p9$D$&$HBmY->(YnWybe=NW<5bG)D1%=5@j<77pTZT4bk!igyhJvn26 z@I-~p7H8bo^Rvuj_rGilxFnbsYiyU1>|%b}=rJXHjsHPvOm+_Es)rYe{HS1waPT?K zRh(}jwb5q~Us15(I-hb|n!e4awjtlZO|D$B1E`_1@Ic`x0%KlRQt4=nu0KUzV`oUd zJG}08yV9;UwmbZe(5DFb)u`VQn`~G8b}6jF({5jKh~?5RLBHLv&aGlsa!KL(hb0@I z-vmErV8u$N9o3YpxN^Y*H}4}4>Y3JF>JOrZvt5hRlsm8sSGYewyAh7PO#Uhp3}GK8 zaEnFNbDH0wWT$T{-le3{uM4*+DU=5>NlD@~1|3sY2E#n>77L!{YA+lwp$hRAoZ=N~ zg%B^${3mK((AOm=pbU)dJl7JKKcef&;F^1&MTsi0A$w;i_!Rz@P)o=@6N`polS5X; z&%LhB@8G-f41seJGrvl+Y=eCT^^Y+gl|t})I9Jddi~7~r6I_t0gJo5_BV<{A46Vhl zGVU_!%R)<~=t9gL?75gOdE)U|R@FlgNdmi#|}%#=G`)~vzy5_KCT zGnoaXHj-JTmz@>~Z+r4A_ieiD|%UiX;i@;9#F68C}$NTPa6*bbx;{QH4!)*dkqGlRz37 aEAAO&x5kzC(@Rtf(In?nAV&im-uoN!*xv*I literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class25/Code03_LargestRectangleInHistogram.class b/out/production/algorithmbasic2020/class25/Code03_LargestRectangleInHistogram.class new file mode 100644 index 0000000000000000000000000000000000000000..0f499ea77ef35829b0e2cbe1e734b8de39b0d558 GIT binary patch literal 1816 zcma)6T~Az96kTWT*UT_LpW6oVVKNE zBPPZd;)_ot#-#Y5sWI?C6HSyh+Td68K@)!vAsyGbcMytA6vDaZ?6dbed#|-Oe?0wu zr_n$LSHlQEF`!1EK^Hi-Xy3C_MZ2_+nwnj7@-+cH1h%cQ;@`PJ*uGg1l zoyt4*Y>}4EiRHXqoUtpeJU5MMt>9J#5)=Rbi7^4QcqD_%6~{g&sku#R1jHi$0zy-GV+0aw6o90`dW!>kv;V zeg(gp^$6k{ZURVfmDh58m21RzK$6Zt2xoDQ76ywy31-mtv-LZI*3LRKWlPEY0ORH( zgeH}2%-VSXC$Ww2I;N~x(&D!5Cv~}(yDa248B9M_fv`I`)QJHypBk;_R>GX z{>B_bjN3dUthJMgJ_%0-vPxQ2(weDBai?Q}&vD5zHEJ76Qq++|Y*lF_(|RoMg(s&@ zd)hEH)9{4U$$ZdM%^;~ys~e495|ofCPpxWH@}Y#=htQsZ(5ap7L1=_92w^lK{xVgm zpW^9vi~mr;ZV$72c z>&MjSKGk_ZUA`jcQpfkn?ge5>9d#n~csd%y33)mOsr`(nqecwhPa~4=rxVZjlVh{l z)Ugfgc+=Cd6Q2@&l&W>%6I`ZEVdR>pvg#>0B$aHiEZx93A#E@wfriE^1SzSAD5}!I40wpYWRIh; z>L%(w%g{}gF6e?qBeevz5p7hdi}ok!+py*HyXz&XJH?2ojB4-sg5{s*wcE%O(C!K=hrUaDe$Wj0;Xw?xg&;~8J7} zY@iPj0kve?4+XlTBlFE`y!s|}3<#WVn$rc>-muF7^kdM#5H1L`I0bjf%2inoIUw>b zTrw~$Gb^QHNxDW2jKCy@N78R`U7#nLK6zUs?W7Ej8F&YA39DLRrNhyGqBh-+Mls~ z=;3{|C!Z+X{uZ_qkFeYO~;M8 zfn6Z&HKspd;|nt_#3B5LgwQJAjs{nM@JgLYUz4jA^O&Tc(6#&$p<|Zp*dBVev1mr( zCYQaxpnnhNp!;^v-gKJKA|Y)}T{FpKcETSH`6YupweMn)eO%td zmHTxzzmmb*NH+7O{ym*)9)whxFT!+MIHY;$JT=t18h6PYaE@j6vd}(i5kZJgL<9q5 z`#fgYb<2EM)~Qb(7g53`Z1MaHT*jAFP{sQ9$ur!bS}r!t@CCtLG%T~83(_YI9h*u^Y$_Td)Kr97TxuA%x6 g+FGf48%6FC+7S|b6Ap2fdLE(ATQlY(#` literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class25/Code05_CountSubmatricesWithAllOnes.class b/out/production/algorithmbasic2020/class25/Code05_CountSubmatricesWithAllOnes.class new file mode 100644 index 0000000000000000000000000000000000000000..93429b13d63f489b31475faa7b72ae5d1d3940fd GIT binary patch literal 1480 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class26/Code02_FibonacciProblem.class b/out/production/algorithmbasic2020/class26/Code02_FibonacciProblem.class new file mode 100644 index 0000000000000000000000000000000000000000..6758d7ee5c4c3cade4f215561f15f5915166491a GIT binary patch literal 3244 zcmb_eTTmNS82(OnHzBYTCenNV&GDElI@IVyWEP&?-_}LI|)eAvA<)9WM_u zI^J*NLmizutuwWj(bh}tILezZ&gg^Vv%cx0`r4`DcXoF|YGKqF1KFIjd(Qv=-~WH# zfA*U{zgSvcMi|En;eg_TszZZQp!7uibi8FcJ~P=eFm@uD$O<^a#*C4T3MdVYM+#8@ zw+n?jil7VBB&OqYbM2v)z3K5}Yy0tTV=O%rPb7@NOnPiOnG$eJv~*Tek7R@a5s#M^z=0H;z9-eaUd60>bL`U3KXX1r;R>y19!@` z{FkfcBCiggjL0$9Ca2XpHki{yn;RQZ>%t}-n^AWQ!q}O)tc+1f&l9Jo*Tin5TLv@6 zOg5IyB;%>hLeyic3k^CN5fCU}WsQJqR_>Udv5=Zc3hLNq1~Abs<7v^+YE3%|&`y_; zNJN_6F7581^9IYinR&W4W+pqWZ12=@mj%o;v|C4~HSLggBRZnyG+{pN(s7S9?O-gj zC;}zD#!Rw*J~fui48>U#f%U!VM11;4JY&eYeN)X&8FK=)z5h_sP60unqDP=OmW?M) z_Qhvy6T%>{Op;cV*$n+C+0-n<7>mzwBA95wsbH$bNq$eTSSgajkzzia++glexkoaF zKfJA`;s%{nHjJ#69zKs}Ch4wxmB-{uEIpq|B)biX*}n!un`J>!%TzibKgAGI3B2y% ztcAaVzgpmPh^rhpu$Nc)7*KF8ue!AW`_RpqTk3*$Un6&qE|hK0u`BBc^zHkBE>XZN#D}E1{eR_6iFei3+E$+j9uIb@dqjKGpjbxhb^E*Z; zO|-A#Qw^&TCF%^R9@TpRWxlA-KN_x%EU4n*@~^&?AVN$6P)a*x45FOZ3SKMWp$sWR zRPk>Uyr`q%8sJBO^H$1D2DzQP{9J#4L8>wiJ6sQ{aX;?~TJWKlBZq0Hk0ZqdQvr=& zmRSf*$PaLXUfohQHnvNQMxo99t67 z(IQ z7}VpW>l2jLQ+aHt{~H_lBITCnzU7#TbZ{fJv6f?JSc|ApN|6e5g`6HI`+t=$r20de zuX;4>Q6nBLy5OYve#turx|tr}X~wlc^UpA@XBpRX?EKHO$G^ai{~~$%5()A$PoP&w zj#trv*VuMmXXAMT5#Ha6H%%P-X<;jO$@U{##XcL6m(9vL7yJ~nbuMh+$|GE-(0UzJ zA%$DV@q-*`W|yUYT&`=&s<+(d;Nf|<1%Zt$ZCE_Hhe@DTp_rt qJZ?V0Fg|5t`3xysqu8#S38=JCFd;{2N1+(y3yys4dYE$uj{OBrWAo7f literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class26/Code03_ZeroLeftOneStringNumber.class b/out/production/algorithmbasic2020/class26/Code03_ZeroLeftOneStringNumber.class new file mode 100644 index 0000000000000000000000000000000000000000..ea6f6ef064ec746288ecf6de6ad9c305ef248284 GIT binary patch literal 2272 zcma)7O;cM{7=F&Z=OzRazCvhw1BDigA%q0d7PUZ%RBK}cL4%#4)R9Yi3u*Jggy7f0 z6+ggjS9REQ99gJ~+HsVfo6fj!#=Sdt&ghmw@j3U#G)~cJ2&FS46lg7N7Yp;w1>RJ; z{3>l9OoYAY^P?Z9|3xVG(N@ha(Ntxdv_ct&YN3)?B+we++E!^wxft~049*hsx?Lmw z2>}@)t_M@C8 zmB;f$9C0B#*>S@=HFATVRPY5lGKI43#(T+HD{`khQ^{M!8&H2au9C&9wy@gO#|IW7 zJRC1@mEbHm8_{ndzM`PvB1d%$=$Pc_cNOpwUgpZD3WPiA@-=EJy?`lqVd#6(d<^d% zH+08HJ7;CefR}&1CSw7-f=fJ`a&(0{WKY$tmU&G<9W=x8_Gd7RJu}Qn?wN8mOb4dn zOsh{F_0k1V&`CQjb#mfu7%@TLi2fegEdcUeZ+%apOcDmzrUp(Dj!9Bs!s#cR)9A(kdI(^E zAyh#;hapz?AjT-EKwsdk6XZ zAK(BX@?xLWd3`}JDj9D!cs)RiX^@<`XMB&qvTl6Wx~$9WvXt4}vTUsMY%Viu8n+*# zW8R4ANj<(1lN_6(f10*|5rU6WiZS+MjD3Q1#z|$up*HAxuM@gJlCz{Bc;1dzDQON3 zgU_*#&mZO*z(218zxE7p`TW2g+{eSdMA%dGF+E>W}U3q9fLy?3dXcot5)PbRm2nePQ{@efVNyj}e+5 zQ{zHdemwo~=-1enwBa^WoE^gaalB5L8JyxgfCUy(mgTd^8h(qh&aq3gB=Sz9paR6C zYF}l4mb7{}E9o_-pxW4|Zv4;C+GU=)1=R!NPXxROiUV{Vf*l&{@G~*|{i!qjosI3G zrKRZpXcNOI8P4gdQPl1(#`Q@fWQF59uFX0uI<(XSrXlH2 aU}rO7*Gb!bJAKd&p%LQ*am{m6!@}RUW^sG~ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class27/Code01_KMP.class b/out/production/algorithmbasic2020/class27/Code01_KMP.class new file mode 100644 index 0000000000000000000000000000000000000000..58d69042067522b4df5c34257c0ee6df8c0078e6 GIT binary patch literal 2091 zcmZuy&r=g;7=FI&ZZ-)^j6ksbhzg>F1PCewix9D>H5!N#q*`iqNmg7936m_2_RUJ=Xu`uTYh=- z({{a%NfZL`K+&NZ(BKsaJun}ciK1CrNo1EFSb0alJ873}Cncan2NnbH!LK7=pb5r1 z;W?*bmsS{Fv`Q<^eK$NU!-ED6ASBS_lxOanmGhN~`9wgC4lKhA zh4QM4;(|nR*uW7S70@4<#dRxtPoP~^%IqdK2%J@rxjOB~G4$y;Zr}v^-=+Da>R7UF zd7avX8~JuQagFR9maxp#vpx(61RSgC99_0n>{0-64C)v%FpPvitGnmBIRv&QD-=sC z8r_RZD&K;W22SC$zyWG9?-G2gdV4gT-iM4#8Z(f@H~}#!T`E|QCHek+_Sk1vw}I~) zn7~;gwBKg$i!klOlz^5kuT^_|I42t}6}ZRgsj?%gY$~B=?2bE&)u}MRvozDN=@O55rFqHGD{-9U zYp$Dfj+uWrYp%Kb>PYLzGRo%bJX_JcR<2g8aI!cb7@6R{vS%Y@#WwhP6Tss^=LYC@$<2 zzaO^IH@ni6I1W8X?9VM22c)(TW>r!>9bZ6mSS7bh>meHz?sEF0mHL z;X_)2wQl1w(iEs4H*tlQ!n!wbmDN;MpT{gMjeBG;$Ld~OV|FimU82q{bR9nT@4Alb zLg-T)#r+Z}I1>+t6u(S^$TM@d&LRD$z>? zj#0Nh>UNyo6TJ6h1W`<3fSSd~eUO+Fu12v2Mpp$e`@G9oFn1g|^7pX97#3(Lt_neD z!8Ztzv=EVipN#pT+F|@PQAoxdi$h&sJp59<`%;@#QV}^GhXy0`cG4R%?|yZI^lJ5g z2DcE|rP5Bxfl)SijLl4v$QVJN`5$JGZIzG|xdq#m;Zs_RwD|9Xj3XV^!YbR*)xCw032zrck4)$t z-VS{Wqw?_rXTC*~OqgVXJKn#_Rf;Ql=o(!~qM7z2)te%z6zA|9XLs7wH$p;vJc4l^ z!b#5N1!{hUJ((wXc}V98uMbD@F=y4ws17XA(m7Y7E`2Fd4xey_K>MY{bVG8-9bg!8vub#s{?hi7_HLT)6Z_$G*A6NiM#U%e5Wf$z((r{|Siz|aHYgx8S*kOt|6@QtvI{2B`z zi6b~)PrQDblI#d#>Rg1>@ablw3f QYpkNiX!A=BRUE49Lowc|2 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 VZDPzx{_f%)cLt^VcnA|6{{k@6%qRc= literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class28/Code01_Manacher.class b/out/production/algorithmbasic2020/class28/Code01_Manacher.class new file mode 100644 index 0000000000000000000000000000000000000000..169f612b769d2eeef0e18fe99f8eea7c22aabc12 GIT binary patch literal 2472 zcmZ`)-A_|z9Dd%Ob9&lx1gsnor2;awKmk9negO3YMA2fM2%E!A4)j=#mX@@|=#njF zA=}O3g~{ULmbf?*vcxTO7mh53WH-B5_8;tK*{*i8>xD$S=RGYWfHr~t-uHceU(fG( z-~RgYr=?;My|@v82Z|2WfCjHX^>yo})s?m~sjkH2b$hBH;O%uXP9Y|sgj>e~@WHPm zV4woV8u&;d=VVfZr|nFtFzv#J0;oilj%ov&5frGKN?ZB-{=;4U*`&R9-_>C&V@*xl zIf2TVvbhqbHXL6qrL@`8I^M6NMqu;m$xxK2t3$}Z4hd9dtXs0LCIijbDNs?!_D@^66SA0?!JL&z zW@p?62c%!vKr7k=^qW?C&Q4qts11+zw{EOoLHyitKRVE|4v=?R>$OakF!z z-7NV#*{%yDwm=GOYo^DC0|J49oi8*^+9@X!z(GWH95QeiM+COGJ+Jj)VY4zqn$4T9 zVwFR!M2|r=^a)g@?7~I2!PQBSu#L?~r(*_=m6IVUw;@L`Z< zB0HOJ_Th{qUG{X1Qp;02suT!|i8~ql{M^i>ox5aBrnwW0XQ!<6n3Z$ny1c0trk%V% zef%}@>JbnQ|AzQSTySGEBt2iC3_auhOg_ueOIzZ(78eCJjTEe@8^hMDn^MP!j!_aj zRniIFb2cMuP9|yJqDPz_v)O#!nRL=l!I5Wb-g%!5C{{);W-O^i>SSXrtz$g5aw)>L zyyBQyS?Y)z%r8m1_JB|RkQAnbxLVa;FY}a^5X^Tb^i}>)y0+I zx7PL}#8Vm`oGpU@1?OlRB>>_W=E^T8&mB68Zy8AE-gj-kAkg*<`U7anleR@{inlL4 z4-9)^o~Rl$qnZ-+n%?%MNBAgWdQH{zK1OXs3r(BeWT#vv7g4(aRZW;)0y-xow6kO< zJ&)1SUf%C68_DjkP)X#KPIV%&Q2ecYY^sk@RkouH8#6T-ZV?SpZQd&uiXWJontZ~F z6}QW?2-5cQNz<{3&q$EH*3qg*H5&MGHF2j6CVQ>L1W)F$6?YKAr+hy?LnA&XtzQ%K z4O(2L&M;03KE`<@7?r%>0^a0z5MSaVM#x$n?&A_h$#Oj-j1i|W(>=UJOJ%;hjGQ2= zZ__IQe}yPAy{^Nj-PD=(+SbKWwzv(k8x>q_=o8<;*WA{ zjd3|UZCagpt_>?Oh198$rH5#Ya5k#?;RE=pTNdDN56vs0dvsnUlYd0Mr+10Q9j*xW zFkYBhT3yl_(2o5i?=W9IDWYzknygz=qsqJ_L{g*i9UFJ4sV4dgEf4*}c$YZErC|W7 zBtcst;c|(Bbvq>BG6~Su;@Cdn%N&MZzCmT#DvT`0b7iA!l|CgFlIlAaQj<|Nq)tRN zQ~d%vOik|AwVNt6s8N2#yjq;s$i!a_CLu|c8gA$#K?}v78?^MQ$f6V!$VCMX&^pNO zqNu?kj{Pv@a|FA|MIU;2t$Hzt7LpRy-8l_pA3Dpo_{Xg@s#&G}u literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class28/Code02_AddShortestEnd.class b/out/production/algorithmbasic2020/class28/Code02_AddShortestEnd.class new file mode 100644 index 0000000000000000000000000000000000000000..8cdf47427a1ee0135534d1ac6753ea37c6eb4e82 GIT binary patch literal 1822 zcmaKs$!{A~9LK-Up2c=13l5XiA!*tKiZ|@W2_`gcN^nz1ahi%i4x~~u@eHwxV@Kmj zm0sWyi33+8q#mF`k#a&R97v(g%c-)P|y4Uk-&VP?J8sumOO9y?VsO!@5g^0 z?bYkJh#MjJ;MbuTP@xHQ-L~#n>9SQ>NzX0cb_$+=cCl0`d6NSEXlx;b0D?L~2HId8 zQlIzSQe}neWv8;@6&va^A#|WqN0)(T5Ed9Hl&xAVGoH>>ZRdRE)|73}7pt!4)V%46 zEzq%QRjfkMai2QtiRKRyYHm)%7IPsy3sXmrfnJ=V*@4ci)d;;>stBmjnVA?<2%yiv zbLbb)?^xw^XYPH0p6FsOcHFmAK5bwSX9U{3YOZLxQ?6^>6;Ps#8^Dl2$XYJgBbm|B z%t#Q=;{_e(47`ZwVH$U9p0i2_)pa5?n~_S@^bJDtScqe-PDnU$0|_Jo{*<1Q~(u28P2ySo4|;StbwjB(DoBO?E?|GheDW*Vk8<9rqn;xy+q#zFM%# z3zl1w>(-{?6-zaN!TkUBaza3q_@CjQ+Tr8LlTFQY1$>J+rm#lLaxV3`7H>BW!$z)J z@vKs%);Jx0*P*NSdCw|*Fl((f^3icg$7NPoXts)7FI8-3gDzKT*l6_e*fCkP<*v|O z_u_Feg-mUPt)8#0y9MWJNz&*$@zACubev@?eULu|OaU6dqgCr!;%Ol=E2Np+xTYIaI4?HzP)Ls8~TjS8uy#NL-kHRrZ(3&V-l{#a{b zkKIQHHE*VrrMd0;&n>a3Y@xF?&(iIrsU-I9!;n6+>NbL#n%J&y$V5%mR+e_v3z|Qx zn|efJ!2XEFQL#F%HS@Edx5j8%c-KW(0j92}0YHncw+tmFEXYhy(dW<3b#_@OFS;_q- zeGk!U9IrCkca+GPPRSEozy!xIe&q{!iQVYMFPOw-b}xdT@EY~}jPL`dI8&I>W4z9p z$~bZ4XrbW>?camZChB~ubR7X5(>ksS{(w4$kM8-Tuuh{Rx_p{xgluo;KGeVETRJWF zSy50vsLgYNznFtc(+fmDkeB==-d%OpKj~+qlq8SFV3H?6Q9itfK-VyPl^EFc3wA(Z z2mVMN&_CTE5T(Bu`NkO|!Ag_Ja2!XfL2isvlO;%Aii}H2l9x*98x3C4QgZOoKFUr> zUXsWaD0P~uPkBr?X&l)hi)pe@59^Tx)%VFZh#6dK)qagJ6qr8LIL%eiw m(>fR#%-+u%)y}&oJKxi^z+1?3<>%R&W&ZM_Ugz3}xqksDnp?^M literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class29/Code01_FindMinKth$MaxHeapComparator.class b/out/production/algorithmbasic2020/class29/Code01_FindMinKth$MaxHeapComparator.class new file mode 100644 index 0000000000000000000000000000000000000000..280f6597ce39f7f84348a105b9144d512d83efd4 GIT binary patch literal 884 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 Rc@)Pu=HvI{I6;Sl{{_sLA{YPw literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class29/Code03_ReservoirSampling$RandomBox.class b/out/production/algorithmbasic2020/class29/Code03_ReservoirSampling$RandomBox.class new file mode 100644 index 0000000000000000000000000000000000000000..77efa8086d02bd49b52d2ac9a133c85c8bd43d0e GIT binary patch literal 1092 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class30/Code05_MinHeight$Node.class b/out/production/algorithmbasic2020/class30/Code05_MinHeight$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..961ea7bbb54dc0ff6c8063ceea16b509cc28ae7d GIT binary patch literal 479 zcmaJ-!A`%gV4}O3j zCC*k(CVJV~c{A_Ly!rfk|5&flMcqaUX%mKn46=mcLaapF6aK7yGhIkGCS<$HSMe1g z-DplMK5-NY~MsS9{FT2vUpu#J2Y3!BJ> zP-J|E(LQ(Ue!KMsYSmt0zHpX8iQhb{a0Lb{S**3o+5S&A_7W{!Epvsh$`#E!KqZM) N)DkZHK@~@^z5&SUUH||9 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class30/Code05_MinHeight.class b/out/production/algorithmbasic2020/class30/Code05_MinHeight.class new file mode 100644 index 0000000000000000000000000000000000000000..3232f8feb8520520800a6f34d0e4ecabe6a6966e GIT binary patch literal 2504 zcmah~TXR!Y6#jP3NlucUrft%cUZI5oZQ9aui_ja|a*HMfn_5IbdYYc5rz9txBxO*> z@udTA`l_Q0sG}W69?%hC)bYWGGUKa%z*irAWfTYIf>Lkq^QHMT4rt3!gy!vT@lM%o%oe@YMXWnJEkSMlIVaj|(V0y|Y315zr9SQ3G9| zIg>L=rTs&LlZ6Fy=-|baWuG*y>=Lhu6@l$N$>$k#Pw~b`Zz6yY>NM2rXh2w?=Jg_%$h~z{Ys@0L@U}fwCm`=R)Nr_RmvzY zG4Z@*(@#$#(VLJ2bn58Bb^(9Zw9TSXHU+wQnCN{0DjBC+$4=}bt3|_JDC8YhkNS@M z0p}AW?wBk^A5-l~^v)^}*KP%{2ZI`hbnL~xr)rdbr&Knjlfo)li6$N7R$=gT(Xz|w za?v#MBYqqZ2$s!KxpUskT6Pd|yrkifj>8xhh&NxuJ_C7z3vj(RME2SWTFuX!#TjEh$DMGpkTG(zM$wY%>ZV#=vPuH2&qX*w zk4vVpAW)kw8<|TfW2JgkTp3-tYlV;0)c#?RGxNw z!q1(gdD+a#?Z*i-d1hhc9^2%ND^(jmr?Wh46iGp4q+-$%>bCWu}1 z4K%a8TL`6{Fgo}cY{hnT@;&H6KW7Kf?SSiafx4ki~@JEGo&@qR&rb@*sYvk1*Tq3c*uE;bye z)$PBe7dn+o(iv5wUdKyR-DK$+nE>-u5n~Gdl*#~teEf9EqaH(O#W;&_jIuTf9esi+Uh z>J4)K6&aRlJ4u0d(q@KhucWgo7C%128>|dl0yiJ$vk8O82eX=Xg zI5?YJ6THP(@}uD#XHpXUjjB4jMK)EQ4Y#&^Atk$`5xYP76kc)XCxp&&-G2Sj2lvoB zHPEWgN$GC8i`pmVkpUUoZKqa8T<1}T3v8&1WgYOQ6r6y(RfW2>y_W->I7HvMRD=RQOo%vS6S9|iIFT;ZJD~dL}WQu zD$mNKGkNk-tMo@Qh<|o#`KkjJa AT>t<8 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class31/Code01_SegmentTree$Right.class b/out/production/algorithmbasic2020/class31/Code01_SegmentTree$Right.class new file mode 100644 index 0000000000000000000000000000000000000000..5b9b13d07221b38e85d815848b179e7f57abc728 GIT binary patch literal 1087 zcmai!-Afcv7{;G7AN$poy1BYJ>!zl)Dy&K2P1c1%w6Q6ucw>;`?y!!nvo<>$bg$4w zS&zz&zapOp`wd9bIv>Od!FBU-ot$U@p13q0OJ^pL4g{E z7Ke_IKc6piQs_D7{%0ga1&o1N#=LIyGEznZ19c!w-x@5U?=2C@` zM4?(VEAysn%XKp-YyrV)&0Dr>0)2)5XQxO&XB%6E3?1H{nq zp0@ZY_8wvNVtROQ7wtpu5Ke20!|B}gx*}d5e0j@U6)haQ5aM``_4m2cCOYtdYMVHN zM`-1j9_F>86KzQN1X&zMJLA+sk|cr^U`#n+8m~?yj7|aUGc1t8i6-C%x6zrHGRCx| zmVSvg$&}Q(r`I(Cef$e7W@Od-vg z>cd5$e1j_XSs>6IAl>CQ63O_5KPffsrdX5Rl^=hWdu}4 zKxG6}#^0!wBf=Hq422UAC|H4Ko`3>+sL;g1y<{ z&DiCEcPR2IfYY13lPAptaG3xu(}Yu4)x*v=EaQLRJ9LenbuiM$S_P-j@4p9lH-H#< KBN*T8~Fi zudd=4#+nd9*n+YVfoWjVP49iLH}4g0^o~v4^ry=P%wxGiu6)8kIN3E3#X3YSG}%}W z+rXabyjLm>^z{zSW&Hhp*Dv`uX8l5Wyy*M8*7Oai3n$+mHDCjon?5wm|PoiBxqWg&v<2D&brb>`&Jv< zu-!mpY9W`;a6UOaJlr)QQ#)CaYr!wx<`K2kUFT>@Ugi08BZLfW9LW{@(S_M5zc}tq z8MqFV|>w-khKsRP}z_-ri@ zGY0rPz|pVlhuKc0zJrnKeyk=R!b+vSh4o|8Lo}=7ap`}FHa5-i?zqaN$Cg6I*Q>wj zMUjduYgyB8Ths4o^wmSe9?(k|2l-4hVxSd@61LGs;W`vxJG$BSp%cfc++oCU87@2u z>JV3N~BVBmCJZT*I77b0Kan-5((GSy{Lf!F{abv z>W8YN>#bT$PmW2LAswdNbzm!v1e_9Alt1&ke~%sGV=j5U1jD+u^DTEgf!pOgCJy_-x$9*|1DVM=k1ZORyuJl_?oF_9V0==7z;fo14Ci ziTdVik{m6QjV%pBJgZGL2MuGeN-Z`_iN?CHMpLWcX|yoOJ&0m2>zJgjx>&swYtW5T z=)oBF;X3Pl3%#hYrk|o8pHp*RQFGrD?#~4J3qeX{Q#D`#)+cqWgoqRMYCpj%?1goW zsr#p>JjGQa=WDB8*l!3v!qW!b_!rnDcoKXx6Ym2zKB?{;QYqI_2~~N7Eh$H-$vFFJ zQAUYJ*zru9J9x1`#}T@0!K+N~H7Z~TJDFG?UT4Usb=U`L?t-ufxmMJ`5OA^{_MlEB z%>7$RShwz zA?^?zIOerUnC3IX7l==dzsEpt65R~tGfSui>UW-R zw_7Nqggbo7U8o_e2FR)bvTA^=8X&6%$f^OdY8}~u=aF?cknz)7N4B2#H%hNrH$j;= zin6mcu}FIPJ|!cnGE<_E1SLmUridy!Xt|EL0;k>5A~Kzb=&IKnwBn9=4>4`0s$>VJ zL|Zc1Zr!J^+WRAgCiW}*4&0`+s+87;d}Dls{S?q4e1fxlV~pZ6l3QBCB^z+b23)cM zm#n5CQp#!?BBiXR5#jkGT0kZ}9A*X1@GB@+F^X{8pBOMyoPnLCA;b^QIo+P8>cKGi K#m0FC6a5?gX^|`d literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class31/Code01_SegmentTree.class b/out/production/algorithmbasic2020/class31/Code01_SegmentTree.class new file mode 100644 index 0000000000000000000000000000000000000000..11eb093e7bb1e7bb4473c881850915d179c2f459 GIT binary patch literal 3286 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 M38ITrzKgEE0o~LPwg3PC literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class31/Code02_FallingSquares.class b/out/production/algorithmbasic2020/class31/Code02_FallingSquares.class new file mode 100644 index 0000000000000000000000000000000000000000..a0f508ccb696a71c658fc50eb986e786b6344e16 GIT binary patch literal 2510 zcmb7F-E$LF96dMLWZTWQw9u^$Qn1KJ(@$tMU|JEZB9SHq11(U#w#kxgNjD+c6pD^7 zGQRkrCW#PNZ8?j~sh24>7mc5i<7_jS(s-J3t2{q}Tg z3)A>igAaZcijDw+0$t1IsyUuFo$UDB(z2Cy1%lJIW4k8={DYBs6>S3Do>RrO^Wzsv zmX)$x4J!N^LeN!o=;*|bx|f$K?zmRgDha5oX1-$0-4f^>j7Mf0#cCc?GEujVo!G^C zW+o$G3^ut{dzy+|QDM|8czv8P%ejPE)X*dQP|>F&jNJllwriD4x4_!HgSCQQK)hz3 z3SkfWRqWNV4{r$UY+$RquVF<%2Ms$o~OrSrVH_PS8qvJD$jCEw<#%VL3x1DV2PQ@%)Wr2Y0 zWUPAveS?dOb())L@>)Bh<0vKwp={r`JY;bdZwW+RnfyS?%C1}oK0s#G%9X6-WPY3W zZXQw9rYCVu$9a6hLr^JZOqVpZS4$8qF-!UdcFfw2m8`5RS)~i+Ql6HbvxT&opEpak z{9Q9DZqBAQ`(|Is?-ZLeOB`3BVLCq*=989fZx2B2V9InW zX7TyG+F{{dAYG_96hbgZ@AFNs73+=HL~2eu-J-7(%r{lFH_uut*Ox?hq+Bz7o5$E= zOvP0~P1#w;bSovYdh#XH{68vm-g@Dr7%%3O!V`#?v4;T29+dvyG@~KxH zFpmZP67mwG7lXw`D7>wK&o`l7euVbKaB}o%RPjdxM!--WVrNrh4rn!Mt@-kir4iRuNol9zUQzP=Lq>cFRVGtu-mirND|L7ajX%^XSn2{J3|C} z`R{QFmx+2AJBaTJS434qELV%TO5|-=#Wh?f`m?;hZr~=#OyUSkEU|+$V|uw)^~!8} zS@gQay~9wp(2byqAr)B_DxZQh|Ba*1(50eBsMzxl-EwsH!Dhi_+~!JB{WII_q&$^D)NQ(kg_gwBt9rwexg%N0V9i?uQ{3f>byjzp7!dk10@Zm1*@vTtO ONlqW2d8;9!X#W>0RzY9@ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class32/Code01_IndexTree$IndexTree.class b/out/production/algorithmbasic2020/class32/Code01_IndexTree$IndexTree.class new file mode 100644 index 0000000000000000000000000000000000000000..a897f5f54127bf2d8b3645830b4d0c2bde1bb95b GIT binary patch literal 830 zcmaix&2G~`6ot>&Zk+_DErGg$Nod*zNV7=zS(37;gs>FSMXPK;B2F>_m(&5=ps5aI!N5jH#mBAjue2q7UBp1F5s?m6GR{`Twh*Xa~3T+hLPX~S}`gk^!X zWB=4|j{NXR^PqpM28qCOD+q(+u7FwF?Pifd)<(|3IXD8_gOMM{w{JD~$3u1F=3_4$ zs+UKRQq@HyAUga!UAf|56>9=k!Y2a8LyvLI+wF4G3IeO`AXJ^nNnb@ret*Q1LVG;$ zM_oS(bUr_{lBYo|P;LL;{|>d|;1!k3cycoHqwP|lQF$0C_Lx6R{K2ya{`0xM=?{l| zQ}a?b!8ms~oQ|u$Vm=?A; zCIjGS=vk!^N6p;?iEy54fmxTie&^OdLDc0L?0WqpY^(PrcZU3jwC)1e0xYf$*F3UV z!8%nh>bhAqbC;RUH~5M_3PoI+dz{k4r)CCUNJa)qthHhMgdtqImvLpz@Pg!;p)7TKZ?Ta= zJZhAB2PsC67~gffGm2Ten;c?=t#46x=MRGNf}lJnpfENU1Qtmol`7OTSiPO@JGja{ LN1zPVt|9vysD6y~ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class32/Code01_IndexTree$Right.class b/out/production/algorithmbasic2020/class32/Code01_IndexTree$Right.class new file mode 100644 index 0000000000000000000000000000000000000000..9b32cba93b9f4bcb0395fa40341acf89d703d81a GIT binary patch literal 800 zcmaKqUuzRV6vfZ%Zo2uiu{GKn^T$RTHI14y)d$74F9mTSO~IBRR4|)lXtyRC+1-fv zD1H+keDOuF2qJy}zl`sK#xt8xLD0a?+?l!O{O;V$w_l&XPA1quB?%3>3By7Ra{>#; z&I_kLaJ<9%ZueOBLV>vr*K@-y0ll)?P9TniiKK-TEP+eCffEF`*X!G(zFccOwY|Q4 zx$jF^e&ik=Q7l^gY^6G5VIB(thBqDt0@{JixMHuiIVrWkeAD%0Ydq{qf8Xg2xRYs) zdd{Hj_^w*dHjVJer9r9rfA)R)2JS1m=)rh6Wf3V{ftahxGzpav7_1q1EWdiY*48n(_AT)7RAp5W41T5S0q`$2iCwY%p z)G1tMi!^|rruq~`Y%ymYOu|`?8Ll34t@5(fPY~6-(K&%xt$u`QbiO1{kp2)U&vDGa z;8^8&gMZddT)-`y=g!hpk3~l6m*t5?cNUF{GsHuA<{MqS zn|v?4=cx|GSz>j-8eJPmV4d6so$f>|MK>7bNYItvDK&?DMAevEV5FhQbH2u(FogI) zXTB~h&+6Hsi_)i575OK%LTC5SMb#4q?oxa&f|jPKr>N8nML9|lN@u%OtFK@sn#;Jx MIZ0R?Wn4$%H$P~DnE(I) literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class32/Code01_IndexTree.class b/out/production/algorithmbasic2020/class32/Code01_IndexTree.class new file mode 100644 index 0000000000000000000000000000000000000000..da5267f653a1b32fea23adba9a2ca35d082e89a9 GIT binary patch literal 1345 zcmZ`&TTc^F5dMzc?%9^DVzCNx5frucLKPGhD2gCjEf)nFjYeJCwJfw-vR#b&WTNr% z;X$isksHa;0x$Oj_dft0-WTNwnQ$d*QutbJ;(KDe9yKjg9f$N8~+kDVfpi<$+O&IRaKTujp--9A^0f@_L@i{ z#Rscc6bL7?WI}bhS3MpuaS%OxtSvKEv6NMB2Miph?^JcE)@7hipdo1IHb+sLmpCfW zT#rVgsF4V4$~mq*xm=mEy;*CnOiMghEm-Bek2{Kx#Q)3NqsB_MCz)ZwR@AW#GwZsxH>&pCrW*OP z;A}d`gf1N6ccgwBKqGXX{nXOD1@G{_4-oHy=VLt8GZ4aYp5~eZPGEpq1cUr4gJ4mC zMjd$8SR86BX5w=AGmNXP9}peTJ|m{2O#|WgXpC=NL35~IPw4Hharq-UTAwUF*KYMo zid)eA;w8E$wb9sbv}g&LFjlaqCA=o=dxJJ*T)}>2T0#018WiXuf!qd| z2thS)9&w(-)K0RQQ!H}?O*oBqjAA#&(1SBY}j6g|)L)wp9PaXM{Nf22S^;&E`=Ng0p`fzTFVDQN_)!lEEN@r+uhj$Qeq zbk$Y=1YLB|F1+cc5-AdkNG#Y;egP6IcKn2>#hg21+y!Fc_wK##-uuou_l+gdw}?%(J}k#|KwUE{AN6f}S88~htB(vWB3JHhGRTNN%-X)-E)j;ea&IaG5QZe-x!Ym zbeQYt;_1WD%i=RONvM`!(Jt_sB4L(DXn{0JxJdtFiXoKNcR%lmG>ntU=C&$uQ4y;WH|P-i8xg(kH`Lqs!MZU7*E78v}bP7(O;n8=Jl|k zhqUTq#<9>XCZX`nth1a2_<*yx#FysBR4yf*C$N1|Oy=nG4I~fOrw}qn`7l-{u=!PI M`M1Pg@?F384+yd4c>n+a literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class32/Code03_AC1$ACAutomation.class b/out/production/algorithmbasic2020/class32/Code03_AC1$ACAutomation.class new file mode 100644 index 0000000000000000000000000000000000000000..ca81dd0a2b9754dc9aea28208cfc9b273fddb66c GIT binary patch literal 2124 zcmZ{k-*XdH6vw|eyPKP)DGe=4Ns%7~#H39Kv^8prXo)}zY4}m7VjW?dF0c?bCD{mw z;|w#M0rkOAdGbk_aq{AeGa!S^Fh14MXJ7mi{1+I9_`RE@6e!bl_uPBWJ@=f?`QH8O z@ox{CP3*>W6d`C5dJG1_0`c?KCswv>xo5M7XV2RuPawS8aUE}ufR;>6OGE^EN@c57 z8yd{!D|7bFp;Ke|UE7K@qmaiO-ecw@?60I_$Y2L6nXi<~%psY2 zF^0-`XAHX(Wc`fg&`($WU?xn|F4iy3+STLMY?(7%g-XdPPg_+-je|+uJLeEe-%3oD zcW9InaNL?*Ws{yMrbT}=HO-S1VKQ_0&zN1y(ha;=T+OQrgl6(IOLdxtF`R<5COd>Q+F%4L)5aWt3V~uYI<-tMg9^Oh3PA_e!Pu65GRg z(Ne|rEXO6emlQg|UMVNrRoCJSdsDfr+U&CA=v1X%E!q1W#k=$A#n_>mFAyo(HE+C9 z^CXUu&x=wQh)uYzUCpbjWiz0z665UhR-liUD+GWX)%BvK)8@_PbC9FG&}aei{(BJp z4$pFGVUA+0J$M~Cjs)Joo2_^vLT|~r69c~@KG}Z< z(V~{qwVYuZ>4&$GOPj`U+?vbjnLAi(>Vtp43=SO$x26)|sbHYjxkJYo_pFE3WRS2#yTodVy%JIg zVBirQ1@ccQiy3ZJhkW+{8wq%GVL*|&kG>Gz7n7nma38M;e2+Sf0fFBkCrQoJ zak@on5yik#d+#F4QMQ;_L@L0wh@QY9n4nJs?Hpu_jpjcC!D8#w1)XSrY&35wrn=Ac zAi8L$5#gt#8#`bkOQt(Xa2J^llHU+%45L6&N7?ujZ2KuTex5XIWOj|TzM$W?WTRLQ zv*ZkBeZsmbJ|G;ySM19^0y6Qr&o#tzKEr;W@Bw-%d9}R8X(`gZh&)D*#1<0f?>~Ol zxAw`7M=(P4m|%~6Ig3x(tqA>ZJ(ZsrQS#GrVJ#<3sYG}=ZAxE+h7Zc12)i>1>Q76w z{tZ?Z(Gge;NMFsF5j~-|oKp#%$_)L0a0466us=GT<2yvHs!?`CZ#4g2kVJjc4FAl$ zTIwy5FUY_kg(&OpzyZo=oU;?u)G>9;we4Ug$tYo;d=hO< w297M(xG!_+yfe|Ar>(6?uo0}S$a6!?_lW;KiYdOkI3t<+ao)OizE7a-f6DKfjQ{`u literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class32/Code03_AC1$Node.class b/out/production/algorithmbasic2020/class32/Code03_AC1$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..3b68b8558c1a03c0376a42c21727c9f2f187fc94 GIT binary patch literal 505 zcmZ`#%Syvg5IxhR&BNHHRr|8Oz=dXE)h;c96vRTQpwf*CN!zQY!~~L5{4Ezn5cC85 zDC^uHxR5UHJu`F9oSAdKzTZFRbF{H-A_GN(Y9Wgp!JfF!Zqs*zhvwyQB1Q=z*Y*N0 zIVC82`vU_y3=O7*C0K;Y$amwob=>TPV{zEJJL??n_Bmv-2*w2J%7(m!0&IeM?|MF= z)?3hZBFQBSD_A9D1M!l?g!=75IxEV#ghI~?M1T4;6w!@4^tn>%g(KG=xREFG-=dm4 zdaP((htp^z&OJ#i{B3?9y%Y4lh?9#jPBd(=(EnWtRyPPl)REo=3#!sGc6j*=00ksJ zha*;pogzC*k!>Nz^)=3}m`#jT=MCg2GiVOYuPAGT&wH0+yj74}&%H htXe^l4|q;F|mug42JEwA(w7vLg_1Y zwG0$+Ps4o^4^U*tM$#9-8MM!e%5jOJ*iw}$Gg!-&qOd9(L#8cVL8N`*zvF#}JXYJY zxzppmROd@)A{@zpA=h4psuR|jlr!XuA6C_q;@lrnc6LRWD$Q+%-4(zK-6R&H>rH%H zoJyrKGw=GoDg?t?M+D((p=d~l*sNH$r`VZdZ%(mIg9vcw=+hkA$YFpj2yEjM${0q}`58QpP@}s# m_V5@_h&+y`bdKQ}p3|D5orV{v)82~qCHf1~-qTh`t>%@&g- zF4^L%{YaL%7mLn?w_74J&cy5$OHB3$>`&Osy)}#7_qq29sF*C!_B`jFbDncP=R8mQ z<#uR7bE5H3D1LupLSbm7M$)!?E(VfL6%oxlMd{ z4NDcZKa5(`Nz_NM9+q~u! z1sbPbyN5F07{MlNW}T*;6{s6tLE-JwFR@i%y{j%cRxUYg*_X}iuvK)z*n(gcwqd(O zO9XFXhd|AW;b_S$nG9@X893IuDzXQ;zwMlIZjGP~?E=y&9=bB`uoNP9pL9gfiCrvh zKA+1mht{@NW2h2#NAQ-Su3a#!oJ6-k{Yn-t9xvN2)hCJG2;RnCwwM*4DKbOB-TG7! z{Q~P&Je3oJs&=z3mTjg>S7yz^X=64=P2F%lW8@}`f~D5JQgbd^WZt|M^3?;tokEsf zGz;9}1vEbNwh5+X@pX(Z1`HORf5U5C-MdxU~=t#_P5?(#SBy!BQ%|c4u873>z6e?<0 z4*{BaYXktWv+CZUq*3OT#P;qITBK!+=0qp1dI$8it^lPU7 zHVkqV@qBOq2e}d$VjM5tKeP)`H=Ott(UJE12&aR+TCi7-=^c;nqN^jO_e70suhw}V z8)915AE@;tf9r8ypT4P!h4P=BiA6N3T!L;cyI2i)3+UK^Fm|FEt!UucZbCc%64=Yr ze2}`sNa6%`ySWZBpD22f!n^ciW`5R6I)u&4TgMT49AUj-)^U_o1{wJPj?qKIar$gT zu*@JKi7JU&i4zi15ZlhDG!zWv;}lbLRhxYM2wO<9X*i(}JVbKd|w`hs>}k&T*$9+upRS(mV;iuVau;1))ZCZHH@xLgC==M$WC37?{+nj_C@l#(Ld zh>B-ukl04T{Qs9KzJwg}3_ws(onz(jDH;J}s_!#@%u4KK6Wv&;nYO*tmoZ z@sKM$#6C7Su4#+dqZG+LZK3?+rX>0s@zBrA(<48|Z(5LuP6lC|;_!@eti}*$UE6UQ z9he}|N%EZ{@$+Q*J}zUL)Ms#&s~gCWX%=5%4&T$~4lcPJ7$b{K_{{BqR8*E{{2rrv zGycQ!jNe|K@o(AN8s-+oH}16S%;XkxnB+h|?~kW>j~dmV1j1!*Rk8XcsKX%9$MaAV ruTOCmtZ%Gj$8eSo0i5HRm~y4_EJtak@c}>UC`rl&)K8mfmRI>7vVP~I literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class32/Code04_AC2$Node.class b/out/production/algorithmbasic2020/class32/Code04_AC2$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..26a30fa6b3be1f46989007f7dd21c445347d1e12 GIT binary patch literal 562 zcmZ`#OG^S_6g^kRXOo(xrMLu_62f5{G3R(rG%wILGP*8d3EU{VDh#KmvU$IvCue?H$WLV!@(cCI zuc^rKy%Z$cEOarXQq|^k!Nx^&GneCqI$+YvBZbqOR-?f2Hgluv7A^@Ss@g)YfTc=h zhHr-^!DSm)48HbK-Ek`xJ`fl>v2RzlHq=H{g>Geg!wq???mbgFsPCG{t2REwM*?=) z_afzZKlni<6v&(hpn<6#Ic~P#gi)>w*KtGQV;h4Q61W&c{?AN^PNV}B`GLTdkgkIG9WQ7d>WFp3FjAKF|>BZ{4liX+Ol9Ra8RIUbz zotVU@5>qy&G1F{62qRtN9e&;L-vI0Q*=2GcF<7fwE``tWg~XROzB1M7jnOvy5blnN za6O3}AJp0kgl+mlpu6CBx>&E3bg-sME;Z?bUsmqA3LJAjRwkpW!-Dh`T2t|YWQ{d5 z^!|Ka!_dCRdYa5F?L?ajHkrBioKUuzDhmvrb7@m66M=QyILy>@ro?fB5Lok*4t7qS zmHD6VTr0wPX1}l+sq*%c+Bs$;wd&V{vVPzgzPe8b?2dV#Kvz+R(ULZth7wN%`deAc z6l41BMbFbg-i)dycKhsvk{jd1ww~qun=b(l7dj~Cc*=4WT-(Q9LA;2~cPWh-urN<) zHyrRa?(x)#1>C2`1pm!s?OY3QA%A>@&cb*)bqISr-4n~Sk%#CTPxl{UU}@qtt_c)x zzs4s5zhi)#QGq{kdp7wJ*@5ICK6`%jkHL_H!7zptW6)tuty7sfMqz|~;}c)N)eSXkv(;DiqP<=I|AjeDLsIaII<>letfy!8M8 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class35/Code01_AVLTreeMap$AVLTreeMap.class b/out/production/algorithmbasic2020/class35/Code01_AVLTreeMap$AVLTreeMap.class new file mode 100644 index 0000000000000000000000000000000000000000..04655a4c0e89af9d7f6784742d5401e7f501453f GIT binary patch literal 7188 zcmdT}dvH`|7609RuzBnzWScC6HzBmiZZ<%mv=9g{i$s!8k~9U1g(bO!h0Si*Y$#M) zYFlmVgR0mn7_D{CI3tcQC6roUqhrvHqaEvX9N(R(jISAA{9zT1zw>=}_udd5OC3Ao z47vBa=brET&iS3+Ip4XwbF zJv87+r&3&LUduJr+qg!fY*6AyDJFB;K>U8wfYDrtAa3%Z+>Z*`b?$YS;iQC2n&QV) znPH^mX__C?WnE)W5oThR53~K4gSiGuY_D5mnLTv1FLuy?x2Czdwpn!N`B9Del*e`r z(5@OKF2F5*)S%WtaXQ|+C)1wF#4@yZLrorj*5;v8L@XkH)X5e_33Io#gSb-f#{w** zEBg$DT5R*zrTY3~>DaD>*;tGQEcRiEAGczuf$}RU87S;lGtADEfr=W(N;>?F;(rjg z3q6(@h&VMIdtG5(mssEEC&yL_ZaqB)`tt$CvDCFU$P>U-eykP%3;JU5WQKoY*IGZ; z;ceu0kC`wfX7|2%)AEhvdOzNd4F&?cqlxu=f=j)uEwTDCYO{F1EnqTq}evux64d-3Z2Eb zRCg@V6-&qE*%Ep(d*aN9Q!PTEm(pJGby}gDJ&_h^Y!8GAmdRek0f<%7hk2#zSIHgTs7xJNzLcL-D`4w_-g4nF~@0! zn#+{%p+-d=h0tsM@CzWj zBlU9p5u7%2AhRJgkn!P3M&qiDgaLnZGHIsQ(cl5$QjxQt@$o^-$6QuI7r;N4G(<3P zw|d&bXSOgL2PtD`#p_l+-A%c{dujN27-3@szOZ`)fzuSZu}!Iac%1?d`<6mfq6E`$ z4<)iRr(rwZ$@{(IBs=)zl17AAZekqfT5igckuxZ3jnth%Xar?-kr9L>NR59cPNN+^ko!mX=IVKE)k9%7*#LPV7|vc@am9BbV~e))N1;))ob(XbHf(C_RdTF}7yxU<-T*@*fOd#`wk| za#3WAF&qmy#j8kCtSPIz$TI#LvRCu3-KO8yBK4usdk+4iTi!iy774}lZxv~u> zGAm^j89BGH6|8Nj;Mj&6S=)qj+l06$c_`b2TOxK2x1*dnw164CkO(!f5-lc~mtZMB zCK`F&j@$46ZpWioh7VD4jD7wyXu@Yns&BL5ejRJ@2du?K>9TQ$F$v9zX6-DP+u3`Y z%tjAasKRcJyqvQRy-M~vWqXv2amm&Qj&zNv#GhCtCacu?IrehoR@EXziPl%uLg`Dj zkQ%WN!AX->8<$XK$Th02v(>fCcmrjwnId)w90|;hU2}!|x@a-5DtrdMR=KoAN6`>% zjYQ8N`T`cYa2%6{F~@!$LNVW!wGEH`g!d5dFW1=+hf&1kTIqZnN1Isc@1#4MSvcES zFgp-MC&BK*N)~lF0>XOxEF=VaA6=8vWjV80%4QMu1ttxNt*;BH==bIHrGRSvEz}p7 zO5phyidg*kucF*%fsmvg8+~5o{Q4{J0z#9KLtu&R?{O4FTZd6)ONJ1LwptjxYGLpL z2L|;#HNhiIO1=*}__UJ;UyO&|F5=KlpL<9&K!S*_EXv*QxWZ~eVMoQt}BRMa} zLG(2aqAxgTeZfKNkHf)d;Sh4-!0#byzd0OiCI}wFg^4%_)+t)kPaO6Whcs~*APyPg zFvujlk2oBpm+yM(aVRfz@PVK78V94D>=Qopv493%L~v_e^m*KNs*c4;r^FD-bvdhx zp2cz&v|*liQr|+B;Ko`KsZ&jM3e6%|z+sy35b66cf8BY6ba^im;xQ8DaR*F&IlA;& zm4rqs;;?RT)Q^^NX(RfYE}}1$MC$<(wG`l8;SPmHaY5S6KnvE12m zhN3NzQ7pWn_U5tx>tpCib}S!e9(;s(@KFZ$W6Z;+SUI0&fIrSE@d;+jF&x4t@gRm6 z{!j5pdWP4};B$BuU*e(kWsaW1=kaTNAxDY_v546v)snd8=y4%Oj|&z(q}i5Qs`aHx zXnjo&(bx14eW8cc(hdY>&IndiT#^t6Oa6hmcUc5skaefpV6$VQ%+Z!MNY_eUWD8M- zTr6cd&>s|Qco%MZc_0N&a-csWiP`yQ4>_Mlz8hpS-R}n#HBa$+n!Unvg!GKsc#d8w2kkrsD8H=ueRDt+ zYB9#v(twJVlxMA#?emM_o^%P*h{Wn_hTKP`gKR%^MSjhyL@Q~z=d?0h&gZH2S#+Gl zts6n}Fs6sM5-s`0353IPl1G>(EKWZ84%0qWu}=Zc@#zIF{2~kTS1|)$*l2 z2!AU_B(NOn?=l(bLs>>rQ{=O-L3!&ulto{AEBfNC*59Ag&mKlaaCkJWBVz%l!HtgYpvH`@V8ZwNsd% zb8EikmITaxr(KYD;)3v=#&~C0hQ6D!2beY5&@b{X%&Hb<8K-j0s&F!^fGlf1W!ME? z+xbJT`!cEZBa-43)`1_hMSRskvFe--eWoNG@k_NDj|&afrA!ZEv0y}OpaaTJ$kwMKjkU)Gk(qgf@jn(`9B!Hq6@D% zV6L*vFJaHEyIdP)c_&8eciE1XtSGcfi)HJ>wC<5SY_$vhm2LeEZM{HSf6EorljDhEJ-F4W}+Ne{x~|1f tLRWkqp literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class35/Code01_AVLTreeMap.class b/out/production/algorithmbasic2020/class35/Code01_AVLTreeMap.class new file mode 100644 index 0000000000000000000000000000000000000000..8b581b2724e674a4e84d4109fdcedef71d3fcc14 GIT binary patch literal 461 zcmaJ-!AiqG5Pg$2S(`>%Tdj(xLJ#V}DB{T?NI?+Nda&dwo4Dwfm`IZPU!DXHet;ik zoee?{Qg>nIy|=@gnf?0y_*^V7#I6eqHG#SZ8xEm8ldsZGWcujeMl%(c1ZSvIU0xDu z2Zy1+8euO^WKo=*`=jhZot)lZg~2peYAjy}b)yklflk$A{v4@%Dx-vzPLRbi31zMg z{}t=ylP(DR!Ai#qf_s7W`Q4sx-@kmlyhIbV0t{qw$Xb}gyg=zxp3Ax?{ge9J z!KoTX0`pDRccYd-rc!lG?HxGArQ=r#W zG~rgmNhcFVtyFyy5-9XWlVGU!T}^BK&;R(T{-px>t_q{qqcF;$BCzrIXBV&zd|w4^ zts=$sa*0^*h;lFhic)B$@w`pXK$#XbGV@nx-NEY2U!!&RH=kl*FMkoI-Q$e=^ge3Y z^Io<;L)f(`a`w&?3wCyjo1YlZ-~rDvJ3#a-7GPqLUy;%)VV%*3aX;@>dYqK-)Rtyw qaEEl&+N?_N5Ld0RD&A{@7_qg9EoKco#*?di8&%!~_T;e*8|DwI+|UmI literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class36/Code01_SizeBalancedTreeMap$SizeBalancedTreeMap.class b/out/production/algorithmbasic2020/class36/Code01_SizeBalancedTreeMap$SizeBalancedTreeMap.class new file mode 100644 index 0000000000000000000000000000000000000000..6c6196cebc863b992dca9e1c531507278b3f53ed GIT binary patch literal 8246 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 UoUbQX{$kQ6Ne|*_Jd3&i1IpJxivR!s literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code01_CountofRangeSum$SBTNode.class b/out/production/algorithmbasic2020/class37/Code01_CountofRangeSum$SBTNode.class new file mode 100644 index 0000000000000000000000000000000000000000..156059b9be3c8801ac31404609d32127a40f718d GIT binary patch literal 572 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

(DcuI;It;eyzmZ=ji7JX*9ij)HW0+DDWjseY gLaLwV^CCXOuVyAJO5ID`t<3SW96yH@yo{#*0hU$7@Bjb+ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian$Node.class b/out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian$Node.class new file mode 100644 index 0000000000000000000000000000000000000000..e1397e0de81998395fcfbffc8408597b637baea1 GIT binary patch literal 1089 zcma)4&rcIk5dNm!vfa8ssZdnVBBFE)(gFt$B_xK#xJdz%5{xJF+CJ;zvP-sG!fe|Wz25SJ>YCq?wWa4x*XcN3_o?G` z{MYNU;|OnNgP#Z)cF6+**$QIF#IVZG>Mz1P{^Sv(JYc z9BhW7{c2t8C2(UG8;<{wY4cE;PS+D*KVW9f3o}VVE_lvcTDdf*)jA>9^!q_uK62D7 zO8?%71vNcFc0=~U$9^x=Q6o(M{|gAF?Rhd-Q#&VlWSUwn+~%)Lfp9arc`X69c)eJr zS<9fr_Y_;t)ULA}u6zVlCJv!jCJ!t|^82FAM{J=DOrs6c*!3(YRi0NVDRaPfir*G1A22w_=MBb{`U!buu{c8UEk@a=$37+4_l}d&5s{&& z;0ZH7MGYqriDC@;o5Uh!nGT`MSsA2CPbmM8Sy%~+<%ES%nfrq55pF2-xXl3$0gfZo fxD6vg)li9|<}e@0`&fu%6^kr$oR>uvOE7)`6o&5< literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian$SBTNode.class b/out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian$SBTNode.class new file mode 100644 index 0000000000000000000000000000000000000000..d2f231cbb8e339f9f5e4b129fef772726126cd4d GIT binary patch literal 826 zcmb7CT~8B16g|_f-ELhd7OCPFpGv95Dn6J%(+8Uv3AH}7sgGvbPU_HQmh5gd_^*5* zCO-HB_)*{)7EugF-A(3x-*fKVIXeFO?c@Y?tQC+!)`jEa3UUH7yYhpq1=5UaZ~D7x zkO<`J+UTSqkgcruJmlfIDEPPvU!Xb&WE?+xUTcO!^{ur5pZJtiTPq%!0YIdk;x>o_1&E?wd*o;*7AUr~QSHfIUqxLzhd`+n4rI`ik+$}k(@Eaz zm`%ra{tNMg{U15G3ZZT5jrz{!=B3CfxyCQCbV=k}=!BDKpk8XrVd2l~cx-Q9Am3JT z@+yoI7pnrxf4@!vf7=)pHSNL`XK~N=iY0C?1Hgf>kAmklS{an6&EopGJx8tlo6U7I zmlwm=cY`%IX^kmuzhdOJ;KwFN9Pp5ai-r*Z}NDGSWZV+9Z3eFrB>wQT?Z literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian$SizeBalancedTreeMap.class b/out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian$SizeBalancedTreeMap.class new file mode 100644 index 0000000000000000000000000000000000000000..20ace18fbbc4136262b5661e40e18431281058ce GIT binary patch literal 5839 zcmcgwYfPKh8Ga77vB5SWfJq@Fkc2c~n_M6v36T4xB^W0KmJXV(G58B{0yZ-ym#)=1 zZJjhtYqx6Jv^C0BwHndXO+-tG+DzMzNnx6%Y5P$r|F>WJvwxK;rD4x|&gTn(v~ea) zg72K~J@0wXdwtIP`7aMY{=?!TdT_NIC2+Xm^udKvg~|)DOR;SevE=x+lcN``v5Z1# zPa>Jf>{oEKw4N@52W4)Q`{0F7AviV>o1X62z3oUUZf$RWWpE-9Pb9}*OeEu}%l%e7 z5lc1?9v+HvRY6TCgd$bUuZqOpas*K8#u^`*!!epTX2plnmen7dQt+k|VbtNIqakQj=4$bZm6O>h_`q zt!@N;2qCOcvl5d+*_hs84W$$UEd`QH=(}6#UJtfPYHU-eE959RtM#;~zr%-ibWp8W zJgzWRlmiP+E|goWTX*@;DJqo4tqCh*iB@}j*o!WDdfdwNCgau>g_nv_t+%M)y3wOh zpLh1aOfr+0w2oaFv!*hMRMG>MQB@*&DaJZ!l3-0z(e&1GbmO47`OqVQ7|f(uPTj`E zM|?PnV+#IrEU!pxI&0C<#|5TX2R`S+^XO$UjHPs1PWMTQJvQzm;^982$cP39?kpQj zj3;B6nKX-NM-j*O4E1&I?`D<@jwq~(B$8HiW^&X@4@o}LX_3@eY~pk*osf5%=**l? zOe^epqJx%KJ+cjsDxYRRofE@5mSoRk1ieDcoY*w42TMB(S0 z?FpYJNjbz(adZXmK;7iTfm3|SGO!vi@F|Wa!B5t+7vC z%A8%z>lDhD-6gDJ+HYYIwy*$$j7Eq}U>GB4LlRr@Hnw37+cA$F_&uA}KcfTxz)sx9 zF8qrf3L(pbEDeZw97_RscE*7CQb1lj!p_X5WIz^ zetAUO?xDS{Kh$;$n?Ayp68s#cvuMh{UxSxx?&$2|eU5&Pe=h*OAj&DOm-d|CtPd54 z5On$(mnbXyB;#<3z8=6nS|eTyn&Y!x!vXoi(Gb^#n6B+|@(VaRv^Vnn1`>sTG{-Mh zZuq0*7Y|jy`8mo7YWxe-xNRqlk&mA&wiEtF9n3AT0N-7BhQoKzHWwOZ(HLB36&PP! zL$%5K@I1CN&1YGax<<^qDUy6Tu4f2=VTvCiu$|#O@G_bi?wt(pA*%gFH-VtNxZ;a% z0>d>*E-}^xhyPihZDX87eiIoROS-6pi!2X~S#i0pa%Nq(&GOTXovgZ9+|Mr-+RR1T ze3u*D3s@!Ku)ynrsBpuOs)Te8UKvPzN2vFpsSBFwCiOKHmGv%Xom0D5bg6S{&b4*U zsGcraoL&4UlQPgID{?>AY3QS#dcsSH6upZ9(>x1sJ7(e4bJEQ1T<44wAjLUi12E2P zInS^ph#40cmWwQnN#_DZ(s)B#$~*TEBHRH;wN|&*GYX3ui*w>Cz^Z{ zAL9-D3E#qB$@vMsgU|3?JizyKh3tk#12%c z(ifJIe2Z-5=o9I&_zhuCmTYv|#BBRC&ZzJMnNMk5M>tB9ss&|DhL+2e3Hl+)##YnF z{#4s$8rf>wwtOQi6bZel_!94Nk;{*F6B&HSxJYC|>^%H;(LG$X?+y<9Q7+lT{o#A4 zkv2CA?QW+uwE6R^baK7R=QTp-b=2S&1%3|Y{2a1jx`xGbUcqHg{hLS%vLEyB@Eh35hdkYElvEDF@sASt2py;ei`!nXoh%P_Fvr{ Bn1=uW literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian.class b/out/production/algorithmbasic2020/class37/Code02_SlidingWindowMedian.class new file mode 100644 index 0000000000000000000000000000000000000000..14c0df7062082c7d586aa696a3b288f0c2313c5f GIT binary patch literal 1601 zcmbVM-%k`*6#gzdGZ)4|DToEPh}y00Zh^H}feLOFtj)H7iA!h=5ACpXOGkHSH~Ryz z&m?_q;zN@@G$}7WR+9#j+7KU&CTi2)ztZ%n|AS4X-<@4!NoXLQhkNe5bMAM(^PO|= z-N#?9Z){);uiI!sM8a@j!V+k^hhH`ng zQaL`Hnkahe*x)Fr&lv}bPb*NneM|S`) zO>7%BS~auX0%kmuNz7`DHV4n3oqSx+6X=dlKIJ@7ER@``JD*phb>F=XI z1v(00H8vGUK*r~&<=k23;4`0Eso+z{#10^1x+=t#EOZc_iiD#P)Cy$PG?yXfW$IjT zO9CT1LENHI7$D*XAs#uJY%8@Suy3;*S4&SM$^FkTV>>w)CY&at)@;?yU1l4Hg^(B# zu(QQlIj7F~x>~*eeHjLHgRqa5{bAc8nYr|y6Rl3camMf7op zhs8a1do%YQ-h#ZihL)*Fx+iLQE9mOG1^Z%8vS(lo&MNjSN5u7wKa=ZG&v^GMIUN}? z=r&|_n#uJQTnn8!?=&0keXHm&OP?U!7tZpAw~A+P!#-&>HX2LW-)SrxqTBic(GR<& z9&>xqTfA@`y_-F)e|uhN1k`L8RGWI>L(3+4=KF6jCj(lCH_*=U0keF_r{-%Mq&$$4^+o&-e(x;2M6#3Vy@q_#JoXcOQR*TE55UgAWM$ae(Uj zj4?ngi|4vpQ#mQwBxjT_A<{3GP;8k7-Bh7_zc4sA>JT9#Vh=4 z;3PeD-RfSW^cv$%6xQFcC8T(S=wq}=oD$+M%tarCbkcNb!mBt<+e|q9n4Q4{SNpk= S?4YwOzfJoZ?HSs0X!!^7fP;kq literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code03_AddRemoveGetIndexGreat$SBTNode.class b/out/production/algorithmbasic2020/class37/Code03_AddRemoveGetIndexGreat$SBTNode.class new file mode 100644 index 0000000000000000000000000000000000000000..efc7ed36b0b5a20ec2d2299af2ad24ba760e1da7 GIT binary patch literal 825 zcmb7CTWb?h5dJ3FX0vgd)M(c8@# z2tN1&{885LB(=~6#GZ$_&wMjy=GX5ZKTl85#M1&Y$l9=6EFdRXI#d(Y2vm5`*dH9~ zVJgTq{m@Taf^2QWbC8E)qu}BiT*2lrP)V}&s<9J|^oy+zZ$_i{`Y4*{J)O40kv`sw zwMy4|Z~I*a2o@$P7?YPfmvOdD<)VucmIPMfe`S=k1y0XD2vs_csb~A%Hm!l6(YX>Z zvtC{;qe-Zi0gDBd+I+Vg9=kL{3rZb7)ZOvXK*xPG2&U6TLlt-`_KkjKw9=1$!h#b) zwR6G$<@4W|T#c}%bgk*Vo(FBsn*@bkG>(UQ*Eh&3|J=iK^XYqk+cYh_flk$yR=kiX;>zRc_rMNwsZf2uX64) g4bED9z*;luAs*46;ZQ46zKV770weQS#S=Jx0D$$h(*OVf literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code03_AddRemoveGetIndexGreat$SbtList.class b/out/production/algorithmbasic2020/class37/Code03_AddRemoveGetIndexGreat$SbtList.class new file mode 100644 index 0000000000000000000000000000000000000000..7773673ba5efaea6de5b81e095c2891744f93a9f GIT binary patch literal 5007 zcmcgwT}+$T8Gera*&i4?K!^!8CMD!&VDpm@0^=tX@=xQ?3{uvl?ZO9ki3yn07`Ap7 z`_p!@P2E;)leTJVl~&@W7fed1v{u{2q-NUPCQaJ)w5w@S?t0aYJ?}Z6Z5*O4rqTp_ zKHq!Z^S;k{-k)>KAOHQE-)?VX1gQW#@Y=9~@WHQ8x9F@pJxfk@q38Lz#q@k$!9SA8 zX7Zy7-u8}}YE+@xMj(h91QojGmz>qrQv*HcR#NE`r*4g>Qd8;WmG$(cbbcb6N`LKA zF74!xPM^I#Nd*P9q|lSBXwk5^+!sWx_)|G~s}Ev78WgP6%o}2KB7iU&Z5#}u36ZBq zHJ49jR=LBPTxQ{RerhG}<~U zLFt&xrkloOnYGvN7A!tBY-6eb+dIFOW7bN7nu-oh=biaGSDm{q(!~k`Zwyx$`~sS4 zUAP8_#x$)PLQvo(`Db23x}2oM&AVCU&S?uJ-F>DNl$3oLX=4nO7#Yu|E~lN8S^CbN zc3NRIeolIrJD2Y}*}-H4xGIt6PRopNOf+o<9% z6d&81*&*^!q_$D_1X-CLmsF_&`{(I_$L|x!3Td)z&68&A^OM!e%^xONZ6xam$vR51 zj{Q%vE<6=k7nn%@53+cHF=Tmu!T?t>!%~Td@Ttw+Np!}Dq9(7HVRi1vO{vkcdFGot zUr4!riwcjWVZYDF#3=P#qcU=h_WR2eT&q+lTD4okzV~q`p4h^HWFju=TZl5wB8et9 z@YAp*8vT0C-a-q*zeAf6YTHj*c{6OsT+=Paw5wb&Js9>=;Z$Mm0oQA}a$&ZFDN!oB zb+j<;J6MEq7GNi%(Z$Gj<0g8LWn=jfPGS?i*y0W6WAxzPF=%!^)fD~ITo*!^puHrp`=yHE$N85 zf{W};Y-TD!-3DgHO%=dpjx3`36cZfzi0veIE$<)^Yq^I8myazREu*6)Wu>$%l+gA6 z5J4%YVn29@DtVVV3T13>sv%w0L%xVlheCWueA;;|;v2H`xNLS~`)?8J6EsHjoE%>f z-33@YdcYn{iC)Lp$|s%K-VM~~F=giPiug)pw8-`g7EJ&zv7laNzPv(mzQQ7zW!la$ zO;dOgX=*IM!EL;XMJ(eEa(u2arN539d=Gc=CSJo^l>P#%*x<|uSZC>d6~DvlEWJ1I zPiji(j2gO&5r0&S_#-#sE%-AtMoMRm>#i~O7T4yPJ@WlV&dN9?3|TSuVnbqY^aqRj zgVdKSNFvniCV{H0sreTgc=GYL_24!R!EX*zB_}C=;U1s%u8Feqa*7GWZ(k;jxJyf8 z8j#4A-yoPg_oStABDRJ0%~;F3@Fg~NyN#K=X)lGtTqeH3?SGTkiEl9+-=>rAu+M#0 z(`U9mP^535NZ)`3_lN@xkdsux;nmEWz6DU#U664f^*{GRj) z(Y+s`>PF{>NKD4>qx&Ih;$08Wy@6P>yfdrbLw!6h<7U$ny5+XE^K$fkwuB$B5&V#Q zdXo)Fdh=U5_S0M3Pp{sElyNVcL?4kJ>*Ba1_%2i$mPf8Tb9aH`-1pJH){am9om$TX;%32p?fDFCJv@};Z z-M#sr8iUQu$z8-;Z*LI7ah8#}+`dMB#7DIGZ8XKVaJu<@)VU<;MzVv$eH!d9>E~^p za=+4ujIU@BQPf2w9LeR9mR%eYX)jcSLVkyL-3ts+YA_L%9uaVZ`2ocycIKx2uJ&ha zHn{#uUPLm+72?GQPt8Ssw|6)E61$09!CzrFkHq)$ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code03_AddRemoveGetIndexGreat.class b/out/production/algorithmbasic2020/class37/Code03_AddRemoveGetIndexGreat.class new file mode 100644 index 0000000000000000000000000000000000000000..7e8156a0e6d060d81bfd8f8bee5bce2136e965ce GIT binary patch literal 3610 zcmb7GdvH|M8ULNTkGs3Mkg%|!!30(anowXtBxy;ELJ$aUAhIzOtdE=BOLECR!tULa zs4Ya0hc6VRBEt-o!7@|ZrrI%3qQ%xeZEb5ieOc{TorKVK$`ormB9eaR+`Gvx**Lg= zob%mtf8XzWo^S7Kmri|uco?-f;DH3247&mcoD4;q)h;y?Ro=hRFh+HuPvvH2lbTUftxcOg%WqAgf- z*V0I2ofb=UX)86OAs*4Tu1spGQ66eFOg#lQu3V&G61)udlzxvU%r1j6F%;)=S_mR_V~&E)VlFwRMj`?@ z);2e$U=BwI6fEH0+S)Wqrh))>W08XEv6w>8wxrc)iiePgWTP9^_?(Q-D_DY>oN|V` zQ-;QqlSorheWtRW2s9=2xDhg_60sUDW$Xq8b-0mXYE13W>J#y>YOL3dc9K$t8aIUH zjoHZ~T|M4LaW2I&8TAU510xi z8_jx5Yt*Aro$ON|uJ(c<$USZ3RIBs&oi7f)I1!Z5%rN_kT9ev*YC(y>-8*{rrk>BJjMgw<$^n$-ETb!a!*xr5gRuZW%MV~?piC8N0F_N-!#WP_o= zY*=ww7+3>85lwELSWhjy2kE^|jB2utT$r4PkX{;Eii&TGsaxrxlP)JIZ6uNMI@%Pu z*O|POQ|1k22wYiYnJZ1Y4(ggDaWg8WO^fsP&&^zSXC`}d%pByJugywK=1SEO@A6OQ z$#^sqLWUadXjD5z1!c4{ctVMEGOVr8d6{Q^;^>;s2Ljb(4W+eFFozGd#@!=u3Q4f`2`(h!ep$$I{OsnMmBEp{%MO(NrQnp$IeAYW-^ zJi##ilcDrSV)g;9Mu;XQ|4B4c=_7#F+vq7kJEPq(=LFdE;<H{52h7J*|o*e*qil z$&HP;olZ#EaVsGv5aV92TqhyZ<;AXI|Uy765uI zHANT4`dlY5s}GeNZ^`p^I@$5z9^r%_K8o1{b@pNYD<~%*NelaM-67K@w}Aig1yq%t zqOT_O;U@2j+Oa{otDWv@vbM6?X{+-1JQQCb*SCUE-xM-f;8RTBc6!L4H@K#YtQ5P7 zo!TkfA}r<5m65*BV+L2i3CQF1LixSRl-G<^o}TfAXUWnoHMQTpOndEEZ4n8tlVv?S z630j+^YTX0G?p$m5+b0C=a1yp{K}$d%t(Z`KW`e=31!~Ec2EPe`8=z5jy?>&NzME% zxbSWI-0a0Pdku!ddn@{?6XQKiC=klf6&RAL3u^63$5z@o#A|&P%0uU#h@=qy;2b;lEN1{wLjn z52YqtkT&2WX%j9=F_KfbByGj8w1*}WU36B2t0)hJ_#$OOrVPx&okHrNFY&uba-j_O z<8G3iIEuNZL=jFExB`k(5jX`OQ*JrVL-Dz+w?X)=v%@22ducA2xVJ`F&SY5FPctkO zjm07rXILl-*<_YNnKM3$prVy3Z6@1VKol6s(F6ZOO-in|T%)GO1Z z1axesL3W-!g$_h1wh!2oh>_$%oS2G9)5Ir6@STL;LhqU|Wtfs8%SbZDWVmH0G&rX& zTzCPFi;&oC+Am?g-Oesx;YF0vHpATf=9YUngDj+oSAu~w?M{*us>D{3=Tf}g6wfxX p_K0qFGHpkB9;b_kEs(C(srAMKA}Kb}O%{{bf>(r^F( literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$SBTNode.class b/out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$SBTNode.class new file mode 100644 index 0000000000000000000000000000000000000000..cf3cb966dc8cddb24c3e08b7a8e3f52e7029c89a GIT binary patch literal 596 zcmb7B%T5A85UhcP1zbT<@d3UP6J-x#)Wn0t10)6#1Qo*749f(@th>oRi27F^jEM(7 zz>gApR_^L$YPx!=(p~fU_5LxPqKcgiVu2l^9m|1*< zZfdWXe<3P{6*}`|30%?HMw*^yag72og&!GKBXcsq8rjqDV?EMtpcr8ZTZ9?vq)@^( F(%&?xgkAsu literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$SBTree.class b/out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$SBTree.class new file mode 100644 index 0000000000000000000000000000000000000000..03af2c64e8a5fc79915b748efa951f462ffc6b39 GIT binary patch literal 4034 zcmcInO>k4!75=XDq-V=d*ak$1kqN;RY)Ov65Ie-+CXf=;$mYk?#FRFEmL5hRBqBYL zkTyy4H(9jP&}o}Ro1~f0g#JxyS}^&Ww5z7mT^F5c_g!_@O;(vY-?{hMmWeYdZacE? zJMY|c&-u>ZJ<^~5{q6^IbJ&B^F@zAdVL6B(s?c`Ez2Nqh-12nap{X-o-dBk3DVB@= zutK=IXS^9rXtoh^&;m!HKVNcdwVi`~`zr-+`>sch)V;cQ)XP`OHNRTV`^8Fm-^GJo zar(5sWo+NEQA#POlESXst)Cncp>v6ln zj$5-*^{Aw!DsYcheAnmOneLS!?ODko!M?#kQh+y|bBkr4|H9np;0|HNO5Ujen6U43 zuo+!UP_bO|s?5|+R)jUX609qB@Cy#MVjGKT+9Tq#D?_|u>pc!qNGsUqtChT0t0|1E z2tiJ_N!>4&`f|ncS+9^Q*8CyU9=#6klA4TMa7%SBhV9s4qu;?!>{4i7?5}Lu_olrn z!Dzulrxez8XM2ol-GPC`Pz(bYv~iDv-MCj_?Q+Jc#w`?bZjDh*bT=q5ZA@%2_RAh= z^S$gB8e%Ue@I?prNjq89O2rpDVbapf3a#|a8?B$4@~X$&sS-J>bCtYX8h5Kjc@LPD zf4ayx?!3h+Vyg|Y3i5RZph@c5+zs(D-_4&LanA?Zn{_jqJuNn-8{Lr;IsTj1xNZz- zTk~#C1$$b9XtBs|@zk|E@5XH`g=H8tu-q5KKK}nGUy1FJo@0l$Dr> z%j>&?ioChl6?#8oYk70jJ65Sz^WK4?)Y7)kpBQ&ZowGVdy_$cpQuA#v8L9vLMptmM z<+4}ZFEdJfu@^>AloTrvcd`XS02EjD0jU^iPC~Bx_}0g#;xm%E0dZFpHZX<< zxH?7vU%~;s&$&a69R3%=`~VN8ufZNkXRaZB9d;&t9q|lVZP(G3maRV`E)R09zzUO$ z8%{jnOj?r^&CF0$Sex%40N^-rK8!dfI08?g179VClN!<{V>W<90Q?Bd2w@#06+)Kh zkHVTmMuvaFMic*_xXg)_MOKI`HHWrkcuVAXq)AB>IjEL#Kd#-kwdXnp|GoQ@bjPLp zQ*=L1_X~8_`&{?G{C{?z!`rwYsxt{qtgJ%%LqycfrxU%`usTfcSp{tY6{LN5$v$f$ z*q<+p0gD1RmC8WG@I)!)0;NI)N(Z7#1OlxTSkP*BCL%w@##DM1Yjf$8h|i*fnG;S& z?h1a8utZ`&@7c5HWI`LH$)U8p+{qIOI~l0%G^zvPdDXiUQ3~vwKf5-tx>R_6cM(&1 zu{AEBlLcIag)?lD60>oRL$k~Vsc=1ym+&ZNP{k~2cppCgggX9$3-}uz!$0si{)vnD z2v4XGzM)$1P1TMk)opl6b>V51!M9XDo>9YiRy}~{)L}fYPT~bMg%@?*9X0u$Z#z{8 z+U|Ds5FWxBHpgz2Mvhb%CsYh0q%5NP2&1GT#P(MlA{8aVYdB2G){UA*d$jF7^)WW8 z#dWo&?`T*ztKFOKrV)N83_9@dR2pG8#-#*%XVMca0)3Y-sW;s^*5rVdOjvJVtx0RL zcNUwN#w!6M&dq}11%=QM^sQ*7m2cCT?-2ZVd0V`Mt+>R?<$KtR@6){>;uv1mLE2>y z%?AnN`rei6bR0+Ma!6BhUxle-J8vlolH6AxiUhbX6xi3symxJlc4#{)iTT%%2ahFp{s*$ZP1q>l%B?m|4I+ zxPW~yz`h1sbgIJ|aST?w0B%)L0_GP_t}+-d(Vh&3F6PC$s?lX;(JezE^EUcsakmC2 zJefIG!=?Ww-`-*fe}+}~Ijj2@1o=x1&RqIk3*fpqpUiCPV(`C0)8o{&$T?1qgf$E$ zb3{hl1OvL6tzyR4t285F?SBtV6UiGG8ckip@P}wg^`>oM)kL>&fj4N8&HO)iD>@<=zbkXsfK>}5=~6ajJ~M`0o#nw$5_u< zvz{Qga^xAPM}mO18W>FK2&Zl4S3F?`w*1Nk-r;nAw;@=q3wB!ryD|EFl0gbl@z?Nm zJ|$l+)yw%c?_pr#2JX*kGrSJF8=7Dhg@6xu2mBuG_=7gH&KwKOG_iyw6KWw7hI5=8 hlYmF4W0G1zG&!Z8dCoL&!iA_ek5ddlg3oC*e*$o!X5at- literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$Unit.class b/out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$Unit.class new file mode 100644 index 0000000000000000000000000000000000000000..8ae827466fd9660c0045c0c2f542bdf315f3f975 GIT binary patch literal 575 zcmb7BT}uK{5Iv)->)NJf-)UbEq&{R((1+4PLMVvQm(WwJ+eO!G7k2Lk{j44&=%F9b zkILqn@72SdnRB>v?##KLU+*8I5vo{EB7&$6%|r}wLZ)v$Tjhb}cFPx?zOW@BUUghY zo)V&kV%tChhK{6(DVT(^J+Ojc|FB&19>ng!{beXZaV2ce4Wu91((&B0m%4DeJ-Kzu zDg^5BX(*YLiL}z7M?$R7XcXH7P3aKQO~)0j@TnvG8>=&5CfoFEYtXiQN8t&n$(|Ds z_L~2kqQXn{#zPVGt}iSpd_wZt3w>LhJLF=Wu%!ca< zzosk{yoaV7!X{f20r-&em@D>UlG!L^7|$?!r#_Bzy7UGr<%ZBp`5~rX$E{h8S!f)O xI3B~m2~wzFmYI#8Hq2q35er~} literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$UnitComparator.class b/out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight$UnitComparator.class new file mode 100644 index 0000000000000000000000000000000000000000..3f2e81447e2f5765ee2be8b48552cc58211702d8 GIT binary patch literal 1163 zcmb7DTWb?h5dJ2YZW1?5jIH%reP@kDLCVip2T`1CZ*s)?NDpu-H#qhR2Ii8ZVf9!DhYxJSpr6Uy}nh7~H3 zAj|!TJk7`fm7akO!df`AK-n{%!?Koy9tt7Xw;j1391W%SQVeHoDfC@S%npQSYkgr% zsEO?pA{VjD*d)Z9dH%bSmTAl zI!hfq)z6c$So;j4&gVUH8nin40FyDxdUo`Yo#KBG?}o&i^WX(B)8IO8gvpAy$+s9b zIWCFVMwjwWIB#*0cZUOY-fXq@1F1TnFUad0e=9z_$dSOU(Cap~LcD{!A(l{KEO2}Z NB~+2-d6iH@`Zp}KB!B<_ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight.class b/out/production/algorithmbasic2020/class37/Code04_QueueReconstructionByHeight.class new file mode 100644 index 0000000000000000000000000000000000000000..cafc7912aedb645b972a81bdcd59b8379cf078f6 GIT binary patch literal 4802 zcmbVPYjjlA75+}<&fLl5@(N5~OaciHNgyPUfutlcAW_6)t%|nt(m8x>}kUA~5?p%~S>3+Vzkg35HzIU~^$OMyN>FFcPEU$fFUTzv$*r zNbd*>DB)m;4ix0As=3mwa%;sDPuMM&$T9>*n&JstHNG&NaKn~LPdplKK&F6bx_+bl@zU%8q+isqKFX)n9HN$wv&i0m%hxe ze%`W>VYuLxOn6bM;d7E-hc6H|LX4IdWg5y+A>h*e{^~%JvC$wWW8zTE=+^iGtwxg! zZ@CMVn4n^gz^H_eiG39}3yet6SRIHM%?2}JE~+%#f?H)U1Ca*ZA2rN4RNF9Y-dt&w z_^Po`#Uc$gs1+ERuu`i>T8KHM2bzLyrrIsi;$jU;a61FLL7H2<&LlNPj~T+)=_crG zdB!pgcc6h5nhnz6&Z|zAwknCjUfe0=R*)D(g)BARLnm-_oBxQ8WM1F$}cy)=3KKM1Xfnp;XqoI%yh%EE9 z8MQvY-^cTrkqgry&@PeQBTX$F1W!7X*Pe`wr))(6!Zb?CfKO^8}yJ*zQ-1oNQ=Z)P;>1^l+(RXqQ#jlZw7NNj}@KIKlTC!Qi-zN zv5v08u-PGL-O+9Y+a+RA$1W-D5MlAE&tOT_Lm^pG{fRTMk?|~>9-wi%PZlL}dtit< z+T&qbkkpXOo+_g^^2Dmn)VXEEbP=rSLZ(k)(U++^M}KHlpA zV09@1$Vl=f(N(xHbUd_YA*&^Fu>fq$SuC9_GLS7k-H6 zRUDL6-z6|H(Qhg$iQbnUIp4LtcSqN` z$M;^?wDbI_%{gT`!ig6d`b1{+ZrOV7!9Bg3dU~JizOemNUT@cd_xEkh&-vh$ol^KE zfk_GB^IbjXwmfmQuxapJvk(ds$$-CHCpoa)f|Z9S9hqD)|K`?_))Npz%(W zL*he-31`{jEf6DG#c5)`ipRm|QE^6K?EegMU>rN{!@5Q@GF$hFYv91qu^+t zaunh)Cn?y-r`!fo(ZQ!?3E*CQ(OmlyzRVRWix>HE}H>IU8M9P^Ng4lO=XriNo!1+jk?= zqqrT#W$HAKdIV!UYB#bv9a1^d{u**p$`o6PeOfohmpMF+mvN)OQ0MmzBfF|AtF{xFXv-~>7NZl=*LhDHKmZ$q$K9 zxSQiTWFUaixCdkKC_Fs$2JA;B4j{{n(p`*}3*+z=uGy%ShWoII@p+W*){Jq&S4jl8 ze*pJ$oi`iy;sJCr>JIB8his@Sa^$-Tw_GKOA7Sie47ZjiU!+PZA;k&&2?3_k(BaQUpqB*Bs zTp;(wO8?pza`>9Zp5SmHc>;16kz7V|yvg7Mj`^5G4sT?{CgWD*VJXKu`FXz@Q^{ok ze3-^)7vf2lzyVArH#1Bg*OA2pk8{YhWK^N-Bs_*KX1*Wp=kZ`akI(h<7{%lGCh@FB zJwMI2QgH?EdM?a&M)VC-l8J#tN(N83cUUEC8kD2G}=hmyDGR7!ykx7z@ zZP;!VrR^Q2%Mcdlu@RGpSESFsNvZ5XC5gJNOzDBiSeaF8q-@qPEO0xNyEnH!R-$sA zWlfzd8`bSRhPrMnB?p{KMr9GcZk8!kC&?=9M*V5bC0mlHZY$}yQccl!Uck!i z<18L@qbYrT#nmuUOC71DJf^kOVJmUDT{K%D5xFcFX$eFcPfK%a7NSlUfxIQvoIE1K znc*;wBWNBoz*cs$Eop#omz&D(UZEViS~)*iIT?su0+Hd6DBixpQ21&?15r?$aT**& z#8j3|*lJH_nGV3~eES*e^yg&x7fkjyn2vAqhwU$!w7+74{TjF7E&h^v6Ad_vHFz5v z@Ef+b-?CkwWupF$_5KH@+b8IaN-x|j#7q{~SpLA31?RvD7Ogcq z!{nE8X+)`+avBb?Y~`+t=$x_LOSEULEn?F)HHaqD~ik@g1|MGsQF5#X`4Zj~I#X;#p$eFNQP1&(eOp zVO#R?@}7eseRPps`g@FxS;bxPkX0|Gx}K3_1ON6crp`8l$t^*m7fDW42{O|6^>qxCphlo Nc#`8O{0OhY^Ivh{+hza& literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class37/Compare.class b/out/production/algorithmbasic2020/class37/Compare.class new file mode 100644 index 0000000000000000000000000000000000000000..9022ed2db0f129fc56be96ca6fe521082a71f367 GIT binary patch literal 10188 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class38/Code01_AppleMinBags.class b/out/production/algorithmbasic2020/class38/Code01_AppleMinBags.class new file mode 100644 index 0000000000000000000000000000000000000000..46e602ba5862fb3f5168ce96fd3235c02b6659f4 GIT binary patch literal 1477 zcmaJ>&u<%55dPkJy=!mmWaG4Hy-rdC3D|+wE#XI~lZrM{6-y2vxe5mk^u=B!+pKpj z@1_tAobpFNixkw0FS)=0P!F6De+c4lKrQBbwjrrvde}Gb&CZ+o=9`)K``=H0?f0>U zbqg92CiD!FFa+!e@}aEwGT5zryz{_q#sbEg7kKe4fkdgiokj|26IKQj$h=_QIE-Sq zO{?&LmoC-^j=Zq)N!JVFM%;B}yJ}$)Qzq;TrjZjUG<_LGE31`_u;pIA@%ime$9K29 z;Evpl1kCooJH1pZ*Kz-FtG!rzTeqo6_Hw zT~D1yNk;D?;3Bx#wyRx(8#(QBanlf73ELaPi(@#~ovSHsfI*SI>6E$i;^A{e~C2)fC=i9YpbFQ3zyeLEv^bRBO7Ci4O#p z&ZRdFwFwq;;pL{BreTVBg`=Rcr2!p`4TI}EPZdf*nOy!E;smW{Dbg`Ir_7%B#+INNOjJ@zt7BFurW97aqfzvyILpSOrS|{>hQ(A8Dyx|4;3N z7ZQUY%dogNh{)uc=E;K1LBD`3=VlVG^0dToZ&IUx6omon448bgMr{VR1 zUN@d2EyOgR4!rRn*vI^@lG=3iufH9@wR2Cf;yi+x=waEhjbo%8JM}$Gy$8p!Gsl>6 z?8$-FrZ(Aw&Lr(z%TD>m{nI=ah##DI19?7I3i%w7%wwJM7LlKlxH-bEa84kV%1$Jv z6CV;)8YPqoPq7*@O;xI*zE+sVZ%>f_5oV$A3$jl!1N?+bM?&=af2e8=iOi8gkbpD^ z$x~io+A8QQ{b=;52veySu}m^CpeYUQ88q=1F(&X9l^U+%8fA*6sw>{b`#f3Pt>Px1 G?)*PV^Fed~ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class38/Code02_EatGrass.class b/out/production/algorithmbasic2020/class38/Code02_EatGrass.class new file mode 100644 index 0000000000000000000000000000000000000000..e2fe101ef07f82a9d3edf5becb3d662a855ecdf1 GIT binary patch literal 1723 zcmaKsOK%%h7>3{D+l&W0cI`M9yUnG|#R*WiDW#z{Elp_JfJ>25r4lUAi8G3)8P6Dd z+$ejHKuCxs*;NE7ECY*zy5I-!8<1E5{{dBm_jsJdX-pTMIp_0t-tYM?XMX$l*{=r& zDB*nr0R%OKVhAH5kbEQ`%YrSPjl%u4M`pznh?FeH@@@zO^E0bDbXxxW=Ig({{7Q$R z)}MdDwSgGo8v0^LASp0dv1PM)WxlZJuA7(UKDjNuI}KXszg2Y~T8=;_zdTbuj<(`8 zEN7!=AceGs{unYCIDz9kP{91OC2cBY@?FP$*y7Ab3S=mTVMU>BS&m~iE=Q5WSqr|xo(DJHWH9hHg zq?yhycj0uh>6zdprZh~)kjIQbx?O>j5eZ&b@$Gh%dZ?}ngj8V#5@pLVKWNp~%*F$` zX48@?yA^4#%7&%(9b?F=T4Wq9|4&K4+vYa^hV7qSiaPQ9ca4b(tEK1v6u{^V=<6VKU7`r|u1Y*l-U>DWpF`F9h2uz+z zuNSojwr=F*uDm*aiWuh|32>^xJI~mN@Hxv}fp4L#vp+-p$VC9J@~Qp?f_RP3nD2ns zagn>Iy6v>6!#~hNiQdfW-=ROd13epl0zIYeA)Jcthf2BZF3x9j>%ZWYl=c*7b`YUG zm(}cD7&)z4+B^6orR`H9*bX~Ic|a#$6a(s3BaUV=n4PqwKCU!eXTk-bCk-@CzQVK8it z;AaUwLYz^8j}d&F;1>u!fq6`EjPqUa3rFy?xN-!agx(DwjgbD0Bl`PHTlFTL)$2Pj z_zXW`RkeKeSCv~;%r)yL5|y)?u1lT3Ly{=Q2Z+1?3Bjolx8$o$|dJ^G5iy< zxg5LqjJe<`CO#8l@8EAWCw`z5ML;^8B13$S;M!4s0oLMLJ1ejn^LUG%Dr^*i=Lm>@ fSgs(h(-1(BT~&P-c$>dP+~&^UY6*Ao9)|w|A;NN2 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class38/Code03_MSumToN.class b/out/production/algorithmbasic2020/class38/Code03_MSumToN.class new file mode 100644 index 0000000000000000000000000000000000000000..9f0769db54fcbacd7f829bc244f7dcfe2f855719 GIT binary patch literal 1546 zcmaJ>&u<$=7=2@}y|%k?8k?r|kF;)^P&<^kX@HhG32hA#mYf!F6r^&X6MK|wV((hJ z>q@zB>VZE2PN0I6OD}K$)I-G)!G(XJLgIg*Dug$-D;&kbtC{(}nQy-Dy*D%d^`9qC z4-c`7wFE*4n=mXy5EVGND<8;mTRPk2yIZ@e83;s|ZO0B)1;WMBW*jlZO(ZOwfORCi zvF`_}!zj1MO{ePpM7CT0z_Xp85qL^=DhVVpY2u`XDWn9Zn{Da)OV`U)x23KueY)Q0 zbvE2P0;cV2dr`nB)=KwM0A8_h3ey6oJ91A|U8gC7kL_TGmLEtb@R_YxyH^^N?c--n z+u3H#Gsu|8TF4$aor^g3J0+mKsr&ZO#YQ?@syXKQ~rX#_hq`JAbb zm!~2icG+sw+V4^E2o>;1rnXMyj@|rGwGL9IrNpG9g(qooMx#9M_ zrdqQ#*!0n3TF^@J3fy+xzz;mxU01=5+wv!)csqd`sF+yRhqfXx``@jyod@ooDi024 zaE@!T8MxlQz!#(14+95D-+bcsmE%lCW{zy!*zc+_;iF^+_q;NCb%rUb zvfXajfvUvt4rLaF8wDX?)f`88Reg1pZ{oJV+%bCNP@8yH;Ozg0^0f^p@@ggdGWE{@ zYa`13ReEKPf@5USf+TeK2Sk7g?!D4PD zXWU<%p;^e!+|PcC=mDm+^)({KV;Uyq1zMWGHSV~~@d{fS(H97b zzmX6k8T$+I=aeC?-`tQ*m1*>*WHxKGKKl};aR6fk~9e_68%g qR#S**t)3(Q0&$ViN`)!Bz8!B-RPZPSuCuM;CcOl$TP*b+GXDbqEl|J! literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class38/Code04_MoneyProblem.class b/out/production/algorithmbasic2020/class38/Code04_MoneyProblem.class new file mode 100644 index 0000000000000000000000000000000000000000..a0dfd39266e5f5f2466ace725f50c97d2a44ca95 GIT binary patch literal 3492 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class39/Code02_SnacksWaysMain.class b/out/production/algorithmbasic2020/class39/Code02_SnacksWaysMain.class new file mode 100644 index 0000000000000000000000000000000000000000..6fe31438f6b305907a37ce23b6b37f6d644f7508 GIT binary patch literal 3521 zcma)8+jARN8UGz=S1YYHuCF4B?8Gi@;!ADi)+(`MClDGU#c>*x*dzw(wY-rxkyl2S zB<_V8s43TmOQ1BA!T>XQA;ZuIC!tJ+na<>ar~U^#@Y>;xVWu#c-#IJUa>iw%8SS3^ z&iQ`l`+nc=e7k@B@1Gv5t>FmXH4#A2fM!8QNTB($ebr7DY%iZYGke*|RRlsuT+gkH z2?TrlCJlrITGXOy#VsVWIotD`QUoTV1}qEP(6k99yHu_?3jzVx6X+OMo^COj_7JCG3Q$`$N# z`M}}i@#37bcmIo7&(2*bPuWZ5)3%I3yT&22>YYxf`!X`{E(<%ci(thnAva=tq2ziS zG4|j|1E03=6rL7ntLM?MhH))QkAmE!H{*xA$3m~-48Cy!3@wYVuUTa3g7ZW6C*3R>4m#F5zG{HoMiqBTq z4yY{^v4N_Amw7tXnOQ&koApOHz2r9yqj1e}^YavdUhpltsv$dGLmpC#bP6uGbIhQy zU@vYCv(7IkOKMUpEtW`WP+eo2iCtQ(lbdSDbp3D~d34`LpT`)KN!yc2JX-fq?#wLBNiMUn+*|NPoCWx6WR!ceOge%3l zW6Rz@B-@36m6mU;wII_TV>YjcXmcoH+BkE^e=V6xX`$A(qnLLuX81MK`B*%K(BZfFVRVZsD~R&1gdh z-ft9ypJOSZ{x5WeOBNvI58ZJh2zotI4Pe_ zt>UyzA46KsDoZSU59e0##i`qC9}I2*HPZ;S;YOg8wFx)X6gLtpG0RbSU*cxN&GF`k z=;UtAtC;b3PqoCfSW~RUWg55F-ic|ZeTTeis=l-27yML-U>EDt!%9DiZhnvKVTF^} z%~$#!9Ovi86#6iOe&qOeSiv)R3xoJQ74QeH`jFohf5Sff1N&K-1473^(az6?ok)ou z98#KilOkRr)-t}1C}&N4gB5O}-%)&%Ba7a9@j6FM#MsHT-=a!B#Dwo5E34GOU^$YC z5kyQb8F>b75+#rV3keyFWJTazT%8s4uA%*tBa4 z%sUi)LYwI%Zrr$sd@39Z`-c9+(28BNQjW3kh6MJLeBd-wV=g$$LS=c#&rt^FndlV1 zeJ;>CP3sK55^^MeZvB`uhk98!`k^X|wEakxMUH;Ve^BO1KY66(=qIWevn-T6=6*5! z?k4BzBpW1VPnQt5Nv8mQ%Ha6@TBC3upCYs`cX#M3H4Zy8lGyE&80y|2QH>i(REBtM z$tRK6-N8Poj(^IC8Ir|rMdG^Imi9+!oM$>Ni+hFYEwD!|@H}}qz-E1x{V>Z;c%B{5 zVfTBLge))v*)1LRF-e7N;>+uVF0T{1jGu8XlR)mI>rhOWvMXFY6 fl{A{Y8#KN}n4i-eV9&b6yUBxe0>8j7Ly`Xh=Q<1p literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class39/Code03_10Ways.class b/out/production/algorithmbasic2020/class39/Code03_10Ways.class new file mode 100644 index 0000000000000000000000000000000000000000..1f9bccc7e6aa7954bf18fb7134338f6aff8fc712 GIT binary patch literal 2742 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class40/Code02_LongestSumSubArrayLength.class b/out/production/algorithmbasic2020/class40/Code02_LongestSumSubArrayLength.class new file mode 100644 index 0000000000000000000000000000000000000000..a582ef4a4fe81e1bc8c64fb1686d6c466d4586a4 GIT binary patch literal 3217 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 X(|n6^{E+{IU+NdrD-j}bwV(MLmf^Ez literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class40/Code04_AvgLessEqualValueLongestSubarray.class b/out/production/algorithmbasic2020/class40/Code04_AvgLessEqualValueLongestSubarray.class new file mode 100644 index 0000000000000000000000000000000000000000..189d6873473e8e9633ce43e8ec64db62aa06bcbc GIT binary patch literal 4620 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class40/Code05_PrintMatrixSpiralOrder.class b/out/production/algorithmbasic2020/class40/Code05_PrintMatrixSpiralOrder.class new file mode 100644 index 0000000000000000000000000000000000000000..d989ff5bc9f2188254c078fb18b17171d26f4bb0 GIT binary patch literal 1955 zcma)6T~8cU7=F&~eC#d@EYJaAcPXv3uuBD`fFDayi^XEVHQg4w!PpGD6PU6)vzZ-; zBqrW)?UfhCn>OhM8n5bwZ5r*B7sdnm`P39f>5`kQBI3 zshQ2@^yI{XTeT)>;bS~SD_1<=U-STdl>ouNqFS`}9wrYB|+#eh&{-(|9 zN0$E=!Ug832e1<|=3`<04FM4d3*1$?i&QDKmwdCbwPH4cJUVi;vRPbZ+oM)4(vQe1 zb<=hPdPmnzYo2=3+hBn`r>Mzs$=&uU)}k%@JOA9_7?;o!xvQ@0H+|1+tXTf0TWxk~ zxRSs;-q7);B>63Y;ltsyogH_}nh4npd0#XuzU%D@d~uYn1H&-rbuzl~ z3MU&oa&pY^=5E6}#r$aR;dLn-owb7y3udiWvVE%%gQP+X2_%;s$MP2B<*}MN7I~9S z^mbawI<5;0KHrq15cbEBjPZ8Mp8`%ZG=5*?Zi1`es^%X-Jfsl8Fuzg_L~()NWN3hk z7~w81r<*6z`8x(uxz0rAqF3@ymFj#xI>lvHNoOD6T*goyAe~R|36a^0i0odpWhi?} z>oN5G)^9RdG)OiGowCN%e0=1i!oMygkm18JjrO33=`aySk)v${myyR9%TVw#E>Vim z=Mr9`6s7Ml#wjW64%|gr{HQu61%F`mart6}J%}IaAk+Vv&fdpJW>z&+S@yuUXwRpo z40ZeodSs`4d#c!P{l1T{*w%eqOiN3485kPsROYzhvweKZVCh*+#=G~Q@eD0{4{4dq z(54LKFo-6z8EWRhHG902)_&`mp`{O$bUl(@lgdMMKSCedOA)^=bfOzWTyr=>Yz(}L zUMz9FfqvY=0B-XMyhGd@$YKX)@d>RzBjKNu?k|bzH{{|W$KVlp_=!<|A?9*KJ|v_u z43dj6=9!{*DBZ#?ck=8u<6WktNvO%HWKl{Xi&6?%lv2o|lnz$f5Y~~LZ9LEf152o^K@+n8XuK$2+IjVo3C`XlISy78+RV$V?y;v$M!D)=ADITdQ zo#&|-6>6YJ#ib@8HEmLpq(%!h?NZYrHJwtEDwdYV9^>rc)#>0s$$Pa)3~KCI;?o-z ngja|-s8NGC=KGA-xR2m<6u8FNz#RXt;%)8{l&;|&^3(q>wc)B< literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class40/Code06_RotateMatrix.class b/out/production/algorithmbasic2020/class40/Code06_RotateMatrix.class new file mode 100644 index 0000000000000000000000000000000000000000..a48fe6bb21e0de218c92067d365339f012fb6e5e GIT binary patch literal 1966 zcmaJ>OHUhD6#lN~1;zveF@e~oBqhX{)}{n#8v|`aL!mWs5+fpn`WWmH4A?W4Jw!oj zcl?O%qGrRUi?$0AMJ>B-y6cZU>1<~UTf0`t6VT^u$MzNkl+^fo7#-*|5RRY=5rKHAVm2Dn zli5YLY)#I7ec$y=&ssITy8TEXT=$Q+%i9(Ysm;w5`5RyF#0B&ih(^$hzSn#f4;r3T zr7L%zo@04G8r#j@t=o=Q^y-#b&GiAe7(omJ0+*`hp0(&YCDVIgdpo2Wp6PfE>ZVr4 z19cw^b!}%m7seol3|x*Nj)Xve8~XxUO?s0i&Kr;!7{qV{Z^>*K{>_SG;EF(Kb46z7 z?FdG3O`yw{y-I~H(Ff_f9zjZ8(1YxBAT7{2|LP~rzaz~vJXK~@peJuT)}8(8mQ`Of zw<_fH<=v85SvTvpJhzytw__7{GXI8}Y_bsjxS6QID=$WOxRkP+> zHgJP%n@bkPtJX;EGPtT~I|2i#&30L$+^laioc=aqHbc?fua~SPTcR0k(>xhj8MekP z*Yz4+-K?!z-i}*t^yv63jAg7C_+0kD7XqWFEo(au-90NC6gy~(C9~wY^#g(L&sMW_ zF)+GpI^~Mh7|pxx-hM529?lugYl>?JHLK0_vxtL7lsnssEfb4orBbv#E7yTlHjfw) zh^#n{RbP}(%4!(6D{$=`wss*KxGymL=Bq4xfDc#Lq#?c`@Wr#)q4WDLPg(9la??*C zekKt@hF>WL6pDdJZ~>EekEc%A$K*)mpJ+(qo>k_Q`SgieUPvob+-B8y@(JSU_@NMq z!;nZGD$SUBs5YO$IBNba-6+1BVHl)!I^{5uLx%regfYNDlR>xdemZc0Dcs=Q5FJlr zh5@LUz$~c{b;j^MDTTVj_<)p(4|%s2p(a0?ft!LqAi=AgV6Eu?p<(I%D`i$wX7!jJ zQxoMUxR;JkC1UzFnOUtxrIRteJe9~4T0}ZI6;sKQjDSkVsX&sP78TP9hq^dw{&)&@ zjNXB$A7&5wFob@L<05Xdqw|FPfU$nbK_GL!%*b?das;Ex7&)~id`SiHB^AJzQ~+O6 z0el6Un5VAhCxYYtUrsLZ0_%){gQ}H*9~g^5n={H>Jbm(*b(~Mg3O>frFX)!&GtU_$ zj&X@qJZk<$?lF?A>QVF0Q(!?A&{=(DcHF zZWM|es?Y5pH%gWkHOP;4P@wsOXs48frKC$rB9!QXq+3cZNJ)>BL<`0I#4}vw8YAq! z@ncNLvxFVIk;{H%MzOJ=-c=dx4Cza Sv&5Ch9iGCZ3b=TX4NRkuL=2h< znSu^OApOuju*WL4w>?(adgzn_0b|338;k0fj9em~nJCy2y?FDrv8d@BVa)tPr$o00vMA;O2&?}&a@s#I9zu{FA*92l4i;AOx z6b5l!;A(gx;vyo4genq-R|TYEO`s+3dd~8Gb<3&Ux3?F0reaaSihu}(9Cu~zVr5Fw@sz9?Uqf&6bDL+IESV<52YXYb9sFRXDT%Ha4TGot%kz-w*0R z&E8vbf*rqHZ!s{RL=GRA_)zt8L16G~VqNdR-*v{K#zie&uuFkoI~4f-e9KN9qoDU} zuUv8JgL&WI-QSzKi0Pc>rGxhm_nb@I&%=)1p{es@bs8dPS1Ls}aHit8$8Lx|fz+bs zIklX6qnx^lj|Hw@z;;>5CYA(x{@az^jqu?br!&U)0g&KC!{GBZ?#8$ZuKLI?5I<3f z;dMTh8PG7qXDV{QFh;mbs0pWrheeToaq7O+rnMPuR-2R~FJyUAAJHb%YG{*Y#?s~H zF+Ly3bZ0GTna^N$TgGD~GIH|-GBX|S%7^kE${yyHMBpK7k1SOrh zw(%AvgBi=Xg|}JHBqI$V)u1YF;K+l{=&Wq+dqG?_v=7eNG-mwwE_?-z19=vPm zKVTq33XU;D)FYWAAtt(yVvW(~colex?vut}*^De7BdhG$BdsxE$s;MwIsAFXR96_b zleKm+S%w|$A=X|jkRR3a*(fdE2^nAkrwk}5Vn9g|14@b*P|~|ZtA}WHXnJoS@w`W} zqiOq&M5rk&8o!}$O*4N@u4%HcCiTLaZWPuGvrt@KH2GAmTQ<+p}NRfpfl9M?ECclf`{ O$pGg@;3MSe-T4pv9fBSJ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class40/Code08_PrintStar.class b/out/production/algorithmbasic2020/class40/Code08_PrintStar.class new file mode 100644 index 0000000000000000000000000000000000000000..dc5c93df08ef63f7e4641afb76f256070dc19d2a GIT binary patch literal 1792 zcmaJ>O;a035PhRvX(d@ULLdzK0Bqw#!Wa=kh+|>wAcsJV$p;^)GKY8(YgkxzRjb7g zha?w%M9zt;d`=Fw%ZJ=@$tnLJryP@1t`ueE&F*4wAla&&>FMe2dHuR)etG%gr&bFS z_$Y}86b)($QN#q&oBBh&V(IpJ<>S>&qwWdBCQRG(CIysId09i8!pcf5i6qWwNTqNV z=LEXzmfmcRjZ|vRnlW6bxt(=x8_jPxj zKsrv@7Dz5QJ8s>WHf0{!f0uk%63fa?IgZ!#T)lDE@HU*aW?Kw5l9U*)HQy^0veH@K>B7M!Dl&mexF5W$-qZp|f~Eix_p^ zC=)q#?M5#5GqlLOGOlLT+;_O3j7PIk3Yn`}bu=4I_b=^5#go>bdn(7@@`dlYlP^3+ zVoyZ&A}^n`{yKCWIdskch_=9c>;xX1VwXO|83C3Rn;$4~z=#_8eS6%3KL zG}FIINyQ?1L){&`9qLF0&lnLnJDOU5rqQ5RHqs7)`+_Ey_r=7%nP=(4dj- z1HO>^=-fxNIZnHLlj_LT!(2Y{So0J0HBwM|R zOH%gHegNgflqE&)U_79RCx$&8e~ybsJsn(tD`aoT2YA@m@8TK{P}mf*Y}Zlc9A}6L R{!_TkRg%&N_z<(``3G&}ea!#> literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class41/Code01_BestSplitForAll.class b/out/production/algorithmbasic2020/class41/Code01_BestSplitForAll.class new file mode 100644 index 0000000000000000000000000000000000000000..2efee92eea7d33c54a840ae7f75b2dd22950b6ec GIT binary patch literal 1984 zcmaKs%THTJ6vn^teHrJ1iQ$q4V;+GJ;{pZ>4hh)dk&u!a2#?T8w3G`tc2 z3#2R}byIa&MWTyrBDIawl(rGeF8U{QpR`h?tfN#wzqxjZqM};zotZP|oH^%r=FIO0 zzw8|zVi=1)c%T?iO=!>ss&Ct$+0nF}-H6Vt-cGF*1@vJj>l70LO1OjSUQ`(HnK%Jc zpz4kKlwG_xJ^?j6*|F$FKTT$Gn}rrHVn^Bj`RiBDzj;6%8IyoN>10#WTbb2V ze!*T%QxZt#*6j46oprt;YbF-;|ta;F9i{|u?gf)0|`Ut_dHiojzUT! zKSBJ!i3fxH%56Zw1%Azv0xn{Rs|s0TN@y$ws9{icGx8fMB752nH04obZ&-;diBM2o z-@%j;QI+l8@< z%J{ZI$>WAcZbUM=F;w%b!^hK2M&#%0B%8IKs}L&Djw&Wri2>>ja%Y_VnB+KzS}ap< zooy&Hn`5&!!{QSWCz3d434V3@7{w*dR9d%V#NDmIETwT~%zPQaI7dG|#AV6^ec!+p z&ODf)JOr;#9Pp_TVxJF#c!k=181DFzsui*i$_V?*2vh$-7@6+cE5ozY9n^M_T}*GV z^p&{F?{6jX8m^1F?FcW~t;h5b3F;++3D@9{&>MmY#t!oGA?Pymvk_0Ci7!AiLu*1G z&Y&Nytnyjr+KvynGm9`j;d%{`BYNk^?JD!uxof(lbl#H=mz2g6Qb(i~k4P=xeV0@} zdR=A;Pw6i6mh@Vn`@|v3ryH0Q!udo76Ka| z#?^VIGRPnLHeMn9Un!vI$Brv0Ni8#VD?`NFPyWnW^361(vPxF)dr!KoWpP zt1h>YI&IrAO_@QhCd_c=W$M>lWU>ky^fv28vtBN^4%>z2p~q#moJ1?jTnFWlrka6y UR+Z1qKNx?-vji5n>%onG0sqHce*gdg literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class41/Code02_BestSplitForEveryPosition.class b/out/production/algorithmbasic2020/class41/Code02_BestSplitForEveryPosition.class new file mode 100644 index 0000000000000000000000000000000000000000..33664fdcd7bbf72ab6f2355a11182981620ec61f GIT binary patch literal 2962 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 JFR+NT{u^)*(4hbT literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class42/Code02_ThrowChessPiecesProblem.class b/out/production/algorithmbasic2020/class42/Code02_ThrowChessPiecesProblem.class new file mode 100644 index 0000000000000000000000000000000000000000..2f2a0cd992d6537e5e8045dd3b10c75b86fba235 GIT binary patch literal 3495 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class43/Code02_TSP.class b/out/production/algorithmbasic2020/class43/Code02_TSP.class new file mode 100644 index 0000000000000000000000000000000000000000..c1276f88b7a068cb8829d12bb733f82e6655090b GIT binary patch literal 6583 zcma)A3vg7|dH&AcyL)$+6$qgVLA#4(^O6=lupqLHgm91whziNIWZ_sgVUZTGXthgL zD+)LU0&3IPj*~cXZJGy0b}Kg~ek3*sKjhR+JWXdpo2JR6naQJ#El4H~)9K{pF{s~v z?$v6sa3*Njd+xdaIp_bs|N9^J{_B;OCZ?v)h}VPgz_4J3;Dt}2cyD}vyfzh2_t$pp z+MDRjDfk+b>13`+!KkS0w%}J-poNBW$yDu!vf22-w&YMQ2n$9Ka}csn6vAB0Qps%ed7FZF_i(!RMukNcJw2_?CfX9& zy`iNi(971oY^FCcG^7yKvIP+3oh>-Y z!l?XQFRM3(&@8L{?&>-*!H*95^{x9)UOfKlK*aJcQ1#Y*{ z8A2ECm}cnJYqe?IDMbLUq7S!Dru!QzyTy?0A>4@%D-`u7(ur(5m)M+*?<4S*K<*;i z6T;oNhlu8gs83LGobizmb~^KGWvg8w^nzS9b3^;+9ZSPm+3E+$Z|)xM9q@x2UuDdN zmp?c8rIRH9_J%Nk6lppbA4oK3(!KHA_GE4kM?<-II!E`shkvdWLBg93A%lI4zuw_& zHj&PCB?lARlBraZtLTEQB~Zx9{(6_KgGyC2g7Bc&a;|P0GDHY3BCGp`~rJBe6m7V;rg^|F;sy!8rYJfH&=AMFHz{ zU@~1?z5l^|(`PJyk8GoJuY<--I}J@dt*A2>?;Y3{-{fEXlxj;B)1+>BTaX7+QFplr> zxqaRH#{IST(xw}I;%GI%|D8lNDK_&u;9RZ2_<>HHOZ^;mO9|j5~nNT{4uST<9vlIi`KfkdsNrW2i;;=Q>{ zmNq|DSejfxXVWcAgQ>*OvbIcSV0d4{YVS?Mv!sc2gTlj{;l0Pm=o; dgf3MQz6(*(5vwAcR%lH zc~!i6V`rhB=fH!%Fqsgc@ZFAK*L=;A`Xq9cAL%9cUz(=)5OltmS)O;L)SftLVIlU^P&S9B> z?IjiUrcv*;z0)hJSJ_^7WrVV}w@ zrb>&cVi`wa{zce1m0=m}tVB6owG=n=t`W&HEgxh(xtU?soX;;OjJU zCM5zGAznUgzz6l5R}6R2l#yU4-ad}MqMV0+AID#7)Elvxd)`N|rV)1Jk5OI_wqad{ zSE&!Y18?v$yHr)f5kA339{ddt{$!pi-E^F|v6xgb!w1a1^|1&EQ7h&#mz~K`p6MvaCv9L|Q)b6bJM#XWJP1^fEkflc(qoSvwiCaUO0ZshfK&m#= zVJ&pjCc?OxF51G`R^Dx5N7jbhu}$02q~W);Bg8e;ctFESUGt9U!h@U>M|8Q4h|t{v zzoEen!JL1Yd{!$2VU1$QvMk|U1R1ys9BbKiJJzaNo*}V&q&i#| zsqvgdKo3sOIK5aVbij6u;f@*KyCEyiCjgO?SV0PSg#uAGWW%;sV3-xN-*H$V``TuQ za~@T22(gY?3)n@NdYQu#jM&}GQAv_vFR7g3o4_Eckfysbe3If{mVZOcr^6b)Ei~sI zu6Cld9`%|WUasBbMjwsM)8t5=CP!SF$kQ1hi{YEM=rZOiRZHaFVO|V?jkF8i6QoLz z+KxF?Ssy8&Nn{icOq1kew&_BXV)o*n8&3-y^2BT}(;?AqXCh>N6IsSry=Bzqky9IlR-eUfnVAh%-y#|H`d zA;NVpA-|6m?J&w|e2fX~W~QhujFUEkvYi=dC-cu<=AV1Xwh`XnPj-He@+Y|NBp%kl z?<<*+Ee(vF!#HYE!qEj8Xy^Q&X@EOjT0%M-vPx84$uZ73)S&lr^ z@I--IVhBue>DB!9tLiJPPD)kMReykAJ4|BxVf4ANeV*sYNiDHAupl&kA!;7Hc!BBd&l6Xcvy4Du{x%yf0`WnD$jj}jCz)t`#I+0 z=NYhHr)DpZL(iZcXY+v>WOf(prLOGATfc+YiS;t)ST7?9V5xFFMD+xbv&f&n$@d`+Y*kgZSHl(+ zq}YQHDb}(N%}QwBt%^>AR@j0#we3~1V}hRh20i~ztZ%O~qyICr{x@0MzD0yyCqn0NKITPjT@?E;i; zGwpyQ(`X0uX#tT5P{!wOg$z1eEWN?M+15;I-Os`fe22k#p2^_f*>`@IA@Ls!iSIGB{wHhD z_gRyEz@+#?HUi&gqWlpn-H%zve#$WZ8I$k-Fy;N6PJEMT<1M_1Nk08K|9*^LQ1%jj zh5y6btmnU0MYyDv;cXSe|7!A#uuEUfQ-m@Wo!)^jaTH*kJg(>btXvQ4bZgms5w7)Ike;sKAkr1 z97jvpCk7recdn0U20C3ComQdCEeDI8B1plo7IbRi1zih&sCzgHIgOiXbm-|z)z8su zg)QlC7zDp%jrkpm)$jSP@CSAfzsD`S-$3lQ;4*IGwHs6Uu#GbPIZazBR%vWa24kr^ z0&O`(q~zb7d^wVY7i8!^!I6jOY}P(-+P5%#S5T@!6PVsXnAiwtY~TpWllXf#R(lAE zbe0#2gN?;~>%WFACGBT$8{Zn|x0jD%OE@x)?sd#fEsMAJ2Yn7^(2u+i`V@K( z`r{b9$z-p%W4nxeJZ7P9p_zCIAJs>R200!nZ`6*D4zW~%EHo5fQk0hsnh%Qz*b;sp zs8j*0RzcjP=HONpLObK6o6ql7#r)=3f_}AtpBGDUNZB~97UDs*2w&uNl=n}mGCZ%s z{2Wn+*VJ|RrYgs`)%7^9Zop5}QcSAl+TV|{H(i38wa-kxH9B$QW%RAUKj?V4iBUhs zk%e2C2cF`{&-c(a%?5*SgwtHPFVB^y3%GIt|A?<>Yv0ri;im`uH@^@FR}QfQmbZ6< zC1fcZw9`!X=NW2W<;dqoU+@ZwSqi6Eh1o1T!=V$048bX?WIA&Id371(@@zKI3>I{G eoqUc3U0M$hzDC-O>))5~3g?2ne-*DuS^IyK-fOS` literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class43/Code03_PavingTile.class b/out/production/algorithmbasic2020/class43/Code03_PavingTile.class new file mode 100644 index 0000000000000000000000000000000000000000..88c54219f0185513e8da9435404f62b5e964758b GIT binary patch literal 4107 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class44/DC3.class b/out/production/algorithmbasic2020/class44/DC3.class new file mode 100644 index 0000000000000000000000000000000000000000..6391b252360f7c1d9910fca35e2cb3dcff9dd20f GIT binary patch literal 4785 zcma)9TWnm_6SS42>(9_@ByR^SIM9!$N)p4P}R|Fd( zXhf5OQ*`qq9C|8jTITD7V_pRF5#yf2ne5?V*__%cTy3&uxZ)8kKnE3+Mlug51Z79z z5)BI@=)xj}P|+RA9@|573K25Mzi=4~7DsRmme8VH=BOYxD|d_dQdvn*+{}@mv&*nN zfK&u4aIHf0ii38!R%1;7Ya>YGx^K92??kDbA#20nc(Itt zm-l5yGrO|6T$Ui|-R*+lh6vVSJzeYRy}4L)C&Uj`3pYxr7!Gj_?Fn(Wn$7H))o(OurtzzkZ25fU-D5FrfGn>!s z9v?lJDeiL*<~Y;1voPr9_PfQbyjLcj@~}9jcITWVqhp->_^9}6)IFx4dil%p$6al= zSS0)2vO74k%N;XX0+N2}2!CVz(K(8Vr*<$U^9-hyUn!4Ol+9l&&(cahosw&YygN#0 z)}SyB3gaLbtrB1Dl53vhjHNG|9}}

H7+C=uj!c8GA6#r{#*ME20O5Iw+L8S|~nj zH&0uX*pti9h9Irl@8-t2u`}vsIn&b9|394R77tUd=_<=a#ef#Y-0jqy$qy-n_ZG&B zgPE;a@pq8*nvx(gJ#Q%#%B6DA9ov;D4;O|?b$&b%#&Mho;7Q4slM3Bel0KWizc7+n z;pK&wLR;Oza-qm1JvBG%6-H0#Hr7ZkQ|jJXD2$Act^c+`b7sCFxNl-Ca~1ZvHhX<) z{oJgrsMzf0a(lDo%=#dnR#tl-XA7l)ddf8*O5H7J zLI;}BCt5sR*n`{oChvD}Pi3gR*hdYPbau|j-fvKcpJOt4epB2(@L_nJW2b%E7oSFB z%+bE2_NDqJed_G&-xDz>PH63Kk=-^hT8-#DzRjmeF@k7CJI5|Q1FH~ryYpis{O4r)ysE+EuG#=756wuLBY6=}X z;?d3k-x_qS_vRZ&y@JKus=}DANRTUC5g<#t)-ihgV^a(Vcco5$ju_9*eRT!|b(E+d z*J0T|m7p~N9cHlB(c}s$T~VN;&Va}M*R$xDvrH4I-x<=;%CdHt4^i{1v(xoDto}+#eZm`s)NCt@Ai+Y~fJNAXZkAgYi(?5~ zmPsB<@gP@Eu%KS#-Q_(j$A?Ja_q@OS3D@G!ScMC`GyDr{m4l=T<9gMA8&n+Y)Dm7i zR&(6I`^8q=sP5o+CodL5*sP9Xi+T{Zs;5Z5fNkpM=vC9$uFheH`k0r3&#=o{huzjq z=(BFa9&0;pw{FKBRzLPy8IE}zu*Pwxbqse|kKk_WB>JtlIKGGN)<+nSmY}*3C)y>Z zC4`B!8+X&L8a#zZ&0JJP=OTAChX4PI0*bk*ah>Qqp$VuSwlY%0|HY0QZq{5VhVWZfRak)|>SG zJ~p&g>(@9)Du6C)3WID^K_skG7$OzIkF71pa5ap_tebI&R1GGrO*l*{f)mzy43nx= z_tN88N<`I=x)(=C)v0OPF6TwPG(I&S@mV@35?eCsP%GS2eEXuP`273Cd9`2sY57o!IXXxpJKA+6NPrdZP~Gq>gYg$U0Q z@mZSt|FQG?g)aCKq5m)z7HeUVcLt~&BT~bPnb3YmPOpHS4(g!xO(PZyB$w%+X%qLP zq~!%!y%)G{r$agz3!I?kY>97ns)Tcu_Jdh3<#?PvXI+uS#Q$JOSUQgerawvPJ zVVY+Zm;<3V;D0hQ8`Xo< z`Vd>l!z|Vx^C)6j5F{o9I1$ zdwcMds1olTO`hM#GkUk3Ha9<~eH!->U$b^nr_rZ8CWL>2F z+7PWtxl+lAEEBxygv_n+ljRjD?dzL#XziKhSFBw{TYyPg@&utAr{_+v2A-r@`6{5)&uIJ5MnYV6ixjcNLRTAVTda9BeJO-@U6j#eXk6c5lJ{77OAc&$Fb zY7`&YCUy(qpQWh3(zi^f0p@+hj@)w*VfI269Y5GBVLi#mnn3LHGUfNIL7g_YCQd%xg5_9c7%OIFWEI=;_0Bx+=eZKH3I9B zAeHKDA*>(qBH&%*PZ5@cGu60qL;cXkcd_c04-mYot^HkG-~J9Z9N^4#zTe`;wie&Q z%=_33%;2^wpA-v>^b~z^hMK17)mND;za-Mvcwqm^p!Lc(#oT~n(F rqEt6C_7SednY)jY@{xXw+!lU<$2kVcKgr)yjIH+}^em(MB4Ymqc||?> literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class44/DC3_Algorithm.pdf b/out/production/algorithmbasic2020/class44/DC3_Algorithm.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f053a6749606ad2ae8abbdffb6bc2a959c2f1617 GIT binary patch literal 192716 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class45/Code01_InsertS2MakeMostAlphabeticalOrder$DC3.class b/out/production/algorithmbasic2020/class45/Code01_InsertS2MakeMostAlphabeticalOrder$DC3.class new file mode 100644 index 0000000000000000000000000000000000000000..d785dc5b35d2c749820d9986380498c0524150c7 GIT binary patch literal 3506 zcmbVPYiwLc75?Tv_wBXU<7Q)THgVi0*-bWa9v4VbHz6U7n}^#b1XQE4*Y>7fKQ_+p z8e$q+s;*i!Akm742&KevK`s!{R%%?Oja-31LZ}q@SrBS|Re~Sz1A%DN#C$Wm*%T?F z1+VVRnK_U7&Y3f3#=pM)+Tzj@cH%Q37%*K}5!i49;$!|7{EZWS>7k7SLt};Es(`bz zSSnWg1kAPTj)f3F&_yVMFd_n5hbR0>W$U($drpiLHuZkKzf>udt4B5;^2ZB@PE@M9 zC#FXIp+dDd>`x4oM+)Vhy?eF@7!_Z@T|3y{zizNUNRu&TuZ4`keziht1Z_wNSY^L7 z&Tef(Ose@7C2?B>%aA0iGG6$iKtS12#uTqJf-a;4f@OcCc ztfEsBg_8=4<~*R(S1V2r)%6_ZA7BhL)?-{xIV#X{uvjV_o}L^kl#lvD6P#%~c!EA2 z^UFmwZcJL$(IOZ34*ox3+QHRI)05OUC;d|bqMu)pUx_n*xhxPpQuT+&5BXDiIadWx zjPaY|$Bh#VojAatmNu!TS2dfdTiT@BN-tZh;_I&DPtpftSP2d*!C^9u3WsLJ*X{JA zfL$z2O{Yz<$j`bu?3QA3LIw6hqB=*Wrb@^E2aQ3Y+o zM@^fYN=t6@;X-lLMXpaRQm#47H&0q_$l2}yA`b?=h0 zaXZ^PIP1fL$^N#?s}Pw?wrc_IMMN{11;j6+{bg-p4cj&f0z+(v5yJ>NP{3NwtgNeJ z9Worz5VBlGXlgw+5P+dhRb#oIQr{sjn_cWnIr+<>?Uw1;(oW5xEon(REA8As%@*@Z zf6XMV6w!3NL~#=e!g8%T%25#^j3I$>o{2GZV^TxuBR>j>9GA7#B27@)Ca5gxpiF9P zq?}1htFVcXE%Z_+3gbGW!o_BB745{%16jvz{}Vxa4ddrscHWurtS(D+b{88*TGGjT zu5`6efkq!Ry^!gJWvGjMdn7-HPE&@QsdI=X12S9-3mF=yh3M@&nQStU4BFC7EnqnZ z!DPT{4#+X<0~$2Eu;E1vFKT)*8I$fDPRlSAWGt7PMOsGcw3X+mRYvP0JD)p;+qqOj z&}(Q=%4;Z4#EV+mjx#mO?cl1k=}Zvg{0E0tUZIW=_2V+6*3V_=jVnXktnGBUfl4+E z$e5L{i~nUF=?}2!BJEovGS*;Ai}?`KZHwu}O|MnPmHlo4iRYxHawH~OYpuf3Gou5w zI8pqG;ff_&OlhgubX%wbn|f2V z*Z-c3-#k)(fXAdi$)i=~`K|EotYR;wahUW`oML&HK?z^N!~8vo(|877#w9$0%Xk#O z#8>b;Jcd8walDHf{(&cih0`L0r$j5xh!nmm*5GSm3;Uh;y4Z)O#r^C*i*JY#d{dmn zx5UHvwm3ujX`B_$;k#lE&x(uqo_HJ2i7WWNu^s1(U6?iQ#(Co&%o+FLd1DYiFbeET zc)^&)kBn3JvGFK=VmyTl#!Kuk;aTGiysS!s=s}8ye2p#%As+J{Y~eVJGsLdSL`uo(J#Sg`DY}MQgB7tqB+Qf?@&X{gsabl&o zQGiG_sv;>>c37H8eTHKovjzM?%v;>OI&?^swbtY{~+;Rms>@*zZHKa4s|6hoSl)Y`R&MwYOM^6}?AGnQqb}t7ZRqi?0xmKg7I-^8@_$8GS4qu6GjqDd+0@wiC`Z zgjKk&qU#!L74`0V@~oy&zGfRQhbl+POh;$xJYt=xSwwlOJ`dNLhh<(MrydrE^1v^& zn_KG|P0$_aCoIM9z&)fC=ne)+okB$&)S%Tfz=0VzcQJ2>pr?W08CrA6OLt1^JaMRE z+@9%5Nn1MlHn=sEUuh`&>#9vC=_ZtP6G|F~8c@<2l!{+kgHn#CS(H^lXuwO>;qgC; zCOlI|ygTy>qKi8_FNY49eW^}fn(Ng}Dwi6lnM}#Qt-o3R>o2M|Y4tZOA#d@p{+3t4 zTXg#O8g+&iBYXy_{Z}FCZs2!#BvcvW%a;$N0lohUmwr7(8n34WRqo}a!4$k-_ebz) N_93bTa0JH?{5L;HD%Jo1 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class45/Code01_InsertS2MakeMostAlphabeticalOrder.class b/out/production/algorithmbasic2020/class45/Code01_InsertS2MakeMostAlphabeticalOrder.class new file mode 100644 index 0000000000000000000000000000000000000000..200e5447f24d035cb268ac3a360d633296705318 GIT binary patch literal 4651 zcmb7HYgAm-75)zQ&b>323jxeUCkaW6s4xr=9$pnlOoGM`c|?h%Cbn{cn=mpDGBZTe znl@Fctx@ZvR;%@ewX`;^(JE4m+8kFLI4t1pSs*1ncqT}C7Q&b>nrL6^=V z_v~}dKKp!U?{DvO^2_(9UYeOf3yvDdgQ7z<5r8I8bgi?`sf|0yJ+)nZ*Sh^#0j(vL zjAhpgC>51G27(CbFihmboTuKMO~;aZs2+Edd$NO`dRqyALK90+Byf7d8FE`w$$lrh zBbFVcl*u~DY)0UMiuSo}eLKwyM=BQ%Ni-!UPQy}xP=6{h?4;f8DFJH{gOzPkyVS(# zID^`mk-kh0acMlv>o~{6xu_5*oO4}=LjS9-urmtWl4U?7TG zNs_e;am6kg?+J0J-b4c$i7f3ThXnF=aZ4NL>$t$gg=i93`)N00Z2H_xwtF}pBl#*m zkz2i!2GL?-9Y|EIU%HH|Rff&;*9H?Cv57N;IgmHBqZo)(o%;4hwk#yQkX1B)@ZbvL0j}Zmy&(;!_tGzPi(h}9yMFJHB12At39}3wZ z`7W@eoyYWjv)$>7bEKp_MXL8W>6q;22G#7K+_b*^(-OFuNQqvWolDJJRpXSKq}N0n zb0t$JKlS_!OKF&r;v~6eL3h^aAL?+1b5KN#;AK*dKTQF!L9%)%?_ppGD|c( zY2XJqtmB80g+CG~p9^vRn7>AwGig)FD&8{NW^6n8V_?Wxqz z$nYW;-v@j*Z{ha+!|o#LA9UAjt}ZmuO15;zvM#IA5%NihAf92^gcP2o(~rM==kdpG zJ9gj18}~iCx@omoouEI=wq(*xx613oWmh3rbW94Iy}$>H9ZkoSz{-zTWzq5d!0XRu zuFIdsYnG1_en;4=Wh>YQBF{rSO(75aa!P=L>nNMP0$1u$?1rDc@Xpb!yK>Oz9O z1jX2i5)ANZGsu1trQX4|aNSPoeI8$+KUz?a8*qTW;eqf)j>+F%e2J2vy)GQ2lt-(V z;>(m2+P(lcQc`gfHCG~(FAQ-K%XI|#w}JmoLgiOfouJi_yc~STDFy5=0YuBkIBo)~ zI_Sn#oza(UwfZGH5LFs&O@4IM4q8D=9m6V1i(0|PNt|VCmhOv{wmur9oBpJDS^-b1 zdQQt1Pia}I73fuaj~Y!u#SSU9VHwi$vT)D}jfOV zBpV8SHn8#8aAdTA5MIeqYK{YU^H~OzG4d-J`PJmWndHD(SjBNZ?ofeq__jJ1b(CyW zVgqA%8DDWdl&?lLcB6)Iu4VMA8P7W0PA1&Rhu8yXWN~W1(_A%$^YJsr``2v$fF`_! zX1q<#oWMGv@|9GKi^MW)5H;*KqSfQqPsz6niDQ(k3gVhm(mli}#|*qUD{<{oe1&6$ zILRI4EO{+jW_d`-=iw?*hMREN&(b~e4h9Kd2I`g zXFWi!-;Sqnh-V7&bcb;p$3i?u7su})mbbA*K0fKi6WD~WbJp~D?O=)I^^7FA&ukrc z@{hGmuyUNhn)g`n*u0M-9d`+eW$z(hHZu%F;fL2q9UW0m6t32*4p( z71ql-Vyk6#V1=zIHn~(bhDvgZyjc^mvGIIdBn@GmM_>wbTD#T$*ygT|K-?>EBJowMuP9q>u@FOL=R(l1!H!V z$Bt1(xR|VyvDO&#8iBY!l84JcoBG|-`}FIzT-)1zgRxM=w;Lw6Ld?Y;ZTQH3#iGdhXZxx6hUUf{P} z`8(qMJ;H2P;Z@H&5sqpck={|HWqgy8{FUQAN_@{S)9?2(L7u@x-brYZmM4fRgl{o> zy&Eo1M$4qebdk|gRKKp|()G_^OG)Phwkfu1sU%dIKvxi`9hem~E3kYLJxwH>*9OCS zI5>%`nnJ#CH5n5M8xy$Z0n|uy{WQlmOfGsY8RoU5nAcKu+c-j_D!p)rT;Tc>C3|vh zjBUw~trm;7c_pgeuBT8;B7T05H=#a>t9QtbK@+7$Y0#a*Fpx8mVJmNNpQ<;~J;0yY z`wJcUSGwdi(rucB@fZuy>!jOp2L26}us2DDzo8R zl1!6U|HWPSA07J+9%I%&fp_sF-orC2SW|c(FJlJ3U_E$+Md4MEhu4JvdN|Bo&!W`_ z8MFX*-GOgY(zth*M`WD{F7=2UB#!lXhy)E0&3Sm(OM<0*rbrSS&dC2>MR|El5Z&|m I30^?>|2A+etpET3 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class45/Code02_CreateMaximumNumber$DC3.class b/out/production/algorithmbasic2020/class45/Code02_CreateMaximumNumber$DC3.class new file mode 100644 index 0000000000000000000000000000000000000000..e0a08e5e216250411e0191b5301ea2414f9bd718 GIT binary patch literal 3450 zcma)9YjB)Z8Gg=p-Fr6KoX~BuY@3!|HtqKQsci|x*3!^RfY#~|2ls2TrD>CGn@zA4 zM1e(w(NVn2&>68IfI+PS+SUO(t%EW+jLzr}MQ|MYiy8f)KO7zD(8lLIyWQeUwIuVM z^Pclw&hx(KJ?}aD`lXl8&dgvvJ`sZj+lP~Y3r``vKfEVgHWF6uUe>>7e|d0R!COCE z86NLduoo@f9YX|BAF%}DNGL2A90{w{)oYe*JUCQdzVg!>$I9V&d3$(dcywZP$HeHK z^4R=M8&@e<)lk7-G|<<#c%UyzBPp@aLdHO!*lbOp4H*SzEUX-0x2PeeWxhouu1jDR zvSd{cls}^o5nEzRc%2D!A*T=>3x|e}+(t+W2@1%+NEz7q1m<8a-54n!7A%Hyr>M^p z&U~tyIm+KjuMO7STu)q6XxTPgDc3#P748|~Oxw1DgW<^TaBNt{jY(&G-!KXQV43^r;FjkgJ zvqGAc)U7O+wz`6?Qw>d52}gE^c7EfU_YS*zB(>{1mEC z=;=BQ{}hsi!fB*Wq5VZ;Vj}ju$9yLm{uJ)haVqFku{epmPSk0q#8InG)<u&qbsG8ivFRf1 zJ3~6vU~7l@kTPwH9i;7`Rj0*%H-V&!+L0Vd>DF4S^32S>{#u$S{>*TtvMsiDBz9f2 zVN@mJL7N?9bf#-cC8^P7Y_u54+vk*~QKz*tRxOEQ6w-UUGVR<}XHC%UEP4aid66Zwjl7^fmpGg^a0ROMB@b+4Pko^%epq{bzZ! z?&bNtk9XkbunG5L2kBjSfaT#qp7V#ut>FM_z^!<2dw zPpc_BqfX&j^(MZn&STnIi|4Ej_?~qOzHi-%A6U2Jgf)O4T4nYXyl73}$JP=2#QHo= zT94wC^#c2s@Qig1FH1>K^O55rUua4~jK_RFR&g9B>MxkNl$yiyEd?W`Zfa6@vv9~< zTJ2|%6pdCQI&bFMiR(=>r`5A+HdY(%36;SbQf=yam1azrvN*9)TrNPQ8dZ^$lpU64 zQXe8^!?%8h50i3`vQFY7q+DdI=dqTQhuPM1SVzi7w>8QAX<=b6SWnJ*Z9*@( zF+5=1jGIWsQL}onfm8yISnF^zsieA#5&tMPQff%ug^i?I)D(S}t066gPt8JZh5<_W zh)D4>eBwf&$D`FlkEMdJ%Rs7ZIZjgOjR;c>mg*g`qq+_#4XBv)uf}DC-Jjw&VF>bD|YcxT3ppUSG z-+^063Fr<6Nlu|q+YD%V26(X3_6Ft+5zKEOc%0UJ^75V9d5Sos7`GR?a@y6Nxecxk z<#z_kmbz*aO1=pt--MFK_6C%^0VVOv8&KkSo<&&-LIYm54v)VRn(%BB@$SM&B+stz zJQLe)_vSizX)ckOTrt;Qvzd~AUvj1V*I!h>r`12OguKDS`bS;`Z_w$t4C(?cCio1J z{g)7RH}HEr5>m$ay5$3@-|WBOGOwpZqr literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class45/Code02_CreateMaximumNumber.class b/out/production/algorithmbasic2020/class45/Code02_CreateMaximumNumber.class new file mode 100644 index 0000000000000000000000000000000000000000..25a1ae3a5942b84d31f4b75802112bb1ca10fb12 GIT binary patch literal 3586 zcmbVO-)|gO75?td%+BuYI&tkxl8MJjou;mLHeM%ovWYjbo7karQ`>8r#ME(VcWh6c zP3^U{wnvc7=A9{Odf`lh3Er-d#!9a-+6X zDogu&lGqD}`nYehH21oIMa@)9?K}`eM-nbNsbVRpECd2ExxBS_Ac-f@C9rd)5{xfb zf{R!D@|eHMK;zuTefiX7spP374oM|#O3BC@7uH{Ut#titrQ*LKm%EdA20hfh)X)*e zM>CgAcmmyzN9NGE(E$r79G2Mk5@=~ZH5I3*FNq^KDxg>VGUJQP!92$GPL#K!&F%5Onx&$Odl~}G2Y0A{I zpH48Td=>P^D6cQA$|d>alAy=>Vo;_?J}A*D0bS7MS1960Ny~*bf9~~he?@s|%2-8- z|5y26;U>S#1KZ9>9n6W%0%sLSv^fzw+YpHM)0UdA%|hJXey~A9!>JWMqL0BqoB@wedjq z1YJ$$%jKXlD%(e4Lx0f4x{5&l;$Uouay-VjK0XDXhW8G{k2s0oI7hh*=*V(Rh8u7K zC;1k~Aaa!Ouy~6*l9XNZYQyPTR(Ee8;da`3@fHm6w)=A{XLy@1bJ4UMP0h9S`AxKB zV|L8#+(i3#G2}T>JGP14xp>+!T|370-8svNJJu%lz9 z6C3qkIL6yFttoeNY`;S`SY^d$C^zK&AIH21okCD=0OFoa?1XSjHlGWolPGn`4NuHh_K$#>K_!kI=t zRxrw$PA|U1(?^N=llUS&hXKOdjW6Ii&P;rsr(Zzy9@>Qvb#5jHKF>eCsY$;HRw3?V zFqCsV%l|r$#zM)1JE<%#8LE+?Bu$x=jd-92_9H`w2yt0`qxVY+-156?`k9 zJI|Rx_cHAav+cWGzH zju>w?+1IH>Hre|B-DIc!Q?>M@3X zoGxcs=qK1fC)qlKSfs4NrrK_?o@R@=%@%8Kw%ACs#nzjktvBj}05n^y(rmGEv&Ckb zEq1BdVuk;;#ZH8k!|`z~#tXVpNZ)T1(vUW!4ZC46rByMxnRHl8k*#7%%VJV{T0OP; za5075^(>3y3=@Br-8DjdMsbi)NgTtX8o~q%NdAUU;EXp3k(C`6;i*B@abZ#M1K=KX zA+`#OA0DCO5uY8ApoR~;+EBVS?CQnNA}L$4gKdx+b~(Cjc(#!-iUl&kM*WYD?&<}# z+<6mw<+5AUizJHXmQQ|$)U>0wCf-3hXE?@BkjX_|rPtK5F)bU{vKHC@CbD*%N{%?D zZB;EHZ-ESlxKx}K)+^Y< zSo2KQdB*($c9LWEvdy02GerzDtlATblqV^vnn@L@?IP5$UGR#N=JkFh;g%?KWNmm##56jUs1eIyOIQU;x~Aa z=XBcnDt)*}Ek#=7_Zod(UTf;x6{p8F%7=MH8v5H}0#GsUNx8q}fOA2nko)vxhv!Px-LiguwviRaEe5r@fk9 z9O`g?iT=ohp4Dxg1#z;2Uk6!3jl7#~pv$wP8CiedfoVsx25+iEK9slHLa&1-6- z{_6+srG7<|w`t~gyrzFoG(Tj9KO!A}%nW}*j`{<6=?;79V`B6nbN?rmHF;khA|5hp zQAOUDRQ}r7QB$1BTcW@Uko~4H120j=k2dO<<}5-xXIK*hT$5M%ei#yYLn2Pt<<)%; zPYBWe8Ft)dKI8Ps2_eCc`7ZC$zU_P2{U#3f+PcT4>UT4lLip5+S)&@MtB`L$5OPQs zf2NC{@+;>rB;&s_luwzyzp2nS*(Y8Hc!_&))B|3eG_ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class45/Code03_LongestCommonSubstringConquerByHeight$DC3.class b/out/production/algorithmbasic2020/class45/Code03_LongestCommonSubstringConquerByHeight$DC3.class new file mode 100644 index 0000000000000000000000000000000000000000..5c3b5818c534dd566365133f751c315322d747f9 GIT binary patch literal 3897 zcmbVPdvKgp760AuwU6v>o;R>bwxOY=>2AAin)Va>q7W<%Ee%jaY_RMm**4oInZ8KXd@KopFX4{X_q7bfiNYf9LMkEzWdA zN#?uv+o=_Fn;0pq?Y(Q)MCm}GJl!`jK0Z;} zGc#14o+_3O^i7l|X9`o-9oq8dgt`a&`&SP3N2oR-I_tSG*e|;@ z#?XXj1!pQ>I>fF!VAC>RFC3S}a5<6$IBL|AptgXkUDga&DuyNKq=NFH!Y38NvZHW` zhNUrd;Yx+bRDPs*;93zso>c??%!1aij>gQMFSK>^5YDyu#XF5N8=%)N(vt>wJtq$@#%#X*c=w!8%?k}yCrbn7}lr625 zw%o(kDd$aB%8%0yYgibEg>jgRR+&S)oHy;vxPn_O9iEZ+nV6Xli2eJ^1k$wRxoz8SD zAanxpbb0{|C(y!~1+<<(+YiZOVKv)UN&`cb8%6>n92d}u{m6=zsxGX-T8?Dg!#$Ou z)}fagEV-ndk-dLF9Ul8k=G4}dmpd8V=-9ri-P9bKl8$yW+RYABTs6P=*L2cJ5n9J{ zWVa2BHX~Z(=pdpvgl3GPgMAlG5-3}_9*4$yZYzK@HBgxvs0^y0Y;2RcTJJ@*I(O%9E>5#E09P|;} zkJ^5nj&^X}9m&n1-PTd>@RNuq!@90gr*w3n5~a1L)0t#A8F6(ewZMbPBqPbNQyXx_ zt`4Zs^6M-=X8Cd3Pw0dW&EZ~MM**G4W@pij33B;? z09pLFWAu23XL%gll{&pKVw`{P(8&qv1W|uhM`izPn%0DLl!vvECI_f=pg<>_T$TMV z^XPofGEJm@XGAB0W$iE?5~i)U{RZ1_)D5D)i$EH(+L0JZ=*CK;^32TWK&62w{y=vn zlJ&NB#CILkVMN8_ev|Dt>*kI*6{kd#(NS+GZ`8@nqe^RM#2a;UeoL}mH)efZV_lKX z=$5RpLu7N=jMf}#?Tuv@uS45?@vK;A`q( z(vRR9>T!Hi&EYY10*|XV@Ps;pC#{W`wYK57bpz(C8}XEN3%+Fy;%TeEzJ%{sGx)A` z1mCkBz%$n8@qOz#_AlZw>lOS+Qi58B6jR3vlM-M0Cc?wGh`EW=^Z8RU0;%)n`;QHj!#l&#DG`v6sn-nc_kMA{Ass zQj&I_O{Ve1udTD%MtPCl$j()+XFQDz5g?<2xvkP$Oy|`bpKRIodAuqCpa$ zx*VxRIw%%GSdyRlBVlMD^$y%cBCo&HGI@dQ(q!T++;^dwI4`%}g(dwW8qsuVnTyIh zjq)XE`EQI>P(b@mbq>B#JP$(!`xvNqJ%3-nY4K`w<;ZhEC04NiswZKPsJ$ z4CsiC=KP3ZJX2G2#p?giG)PsVx2o^76y<6)^jWKb1%|^5EcZVq$QM}CUgCv*nSphZ zVeu2}X>k-cQPwe(gu7JZqvl$8+;5WUrJeyT^|l?}In;@}&!XcT zT=9BWHF&P1Qa*Wum%}tiqNcSybsUNI)GXqxs!t*0%)_yt;Y!sl9{IuCBoBi1Rf!tt zRtyk~theH3QUbb_4w73a)UBkd&j1g0gT0M$BTwr9!7*wJk*~8|JI9Gbl5tDABc)yK znQCxpC_gt)c2q@cP&#W+I%`lmu_u7iX+VkpIt?f>ypty(2|>I@c*!a}{y3?@vyI2Q z($6D)YIFO^=uP(4R6C32Dw#=TQv(&7A^Epe7t??BMfEG{`!!R@YrL$lvlP6>YxNt0 zI!%o+K7%Aq#6?{Jevj`iIafZ5`2**p=KO1~r&#cMYNq%2%cu%Zi7N5lWaiWs*67`~ zZ(e>*#~kh=z839dAH{%npMY0!7X@)J>x^X0`^wFc^-Aq&L$qb&NhK9oCiv8em{;SQ zs{<+R4pbakdwlgpYuC{h;J38ocZBi=J@+Q>z+1HH_gIcU(xTJ2gK2&r{)8geCs@`b zjO6S#&<9coJX%~Z{&0AQhD=P$=}gv6b`rPKAAFm$a8^@&i0@VLk!{XyDZE9BdO_YY mnFhG*U1sF&vxqVmlJR3yX%WoFO}`g+vX4?}7<=&vME(u<0d#Z# literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class45/Code03_LongestCommonSubstringConquerByHeight.class b/out/production/algorithmbasic2020/class45/Code03_LongestCommonSubstringConquerByHeight.class new file mode 100644 index 0000000000000000000000000000000000000000..f16c82bdfb38a34981a6bee03d3f44ed49cf3110 GIT binary patch literal 4047 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 literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class46/Code02_RemoveBoxes.class b/out/production/algorithmbasic2020/class46/Code02_RemoveBoxes.class new file mode 100644 index 0000000000000000000000000000000000000000..3eb02dbe70bf069832e55ccb774ebb46175d537a GIT binary patch literal 1729 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 KCDP%26#pB1hi;ev literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class46/Code04_MaxSumLengthNoMore.class b/out/production/algorithmbasic2020/class46/Code04_MaxSumLengthNoMore.class new file mode 100644 index 0000000000000000000000000000000000000000..5484ed3346407bb7f99b823d3944cc19c0103c46 GIT binary patch literal 2723 zcmb7GOLG)e6#njXPj}DIB*P>fOeWzKqLU$+2*eQ*i1G@IOcEp^0pcS~rU^~v5$1uQ zE-Wh+3#xQsxzH*LD_F&b@>#~H6y?f=dlzopiTV@Ng81F;iGZS(A?bVXx#xYpb1vWB z`SRxSGIrtRFal6?s3wBY1R`hc^L9_pF3j|doI2}FR|K?OZo#b#2q^K+aUF)hn!8Nt zLdBVJO3Et$!dL}U$7&OGs28Za%Qa+I&QLyYUl0h!)9KE%jx_>}9!Is}=6W)2Vb;lJ z+;Sz12o$NR(S#-SD0#OaiEB+fgk}NVEg#6wRW5oCos>5*6Rl_yFy)bv!j`sixh;W?xM)my>EF|HCF8L7Z04OXiW&0!{Js zy}D}|pz;V3Cbpo98trUWz>5Ffg-*}mq=_DBDI^^pbW48JTTN{9skC3Cu0pSg$B<$f zN_HVz%zN(cS5UwA$q;s;Pe;GWI_|!&bfXu`6-TlbtIUPvyWtjlj+7YnXr<)X`F;aW z2$;7%yZrNqZ~b`Vl^?HN4r34Y>ey#uKMn{qc=@|uig}omI&y`-gh!=rVWz)xJdA@l zq$6$ODI6BqIGwZ0<=#}!zGBvSwDoU*$)(r&O|8R88Vz zk_9=4Arr$G5l}0Rtf>~Cl+ckkPn$R@Z!|)R`lRP$((PkpW_iX9Ob}@!#kulE11J8B z^QW)gy!GxC@WMmMxSBuZl*a5+IZ~pT;JYs2gY{`-v-p9iM#b!gH4E{in@m`0a%#j& zz|UVHa^iDD`&1^dHMWEX<}he!3)tDLE~4ojZ0MGomam~NVqLP^3MQ|@l%!1)*Oq^1 zR%K2*7STB|ACw98xVvlIDP2h!R*)r`l@c|wWxR)wJU==izyHUErQfH&+cJ__mNcc$ z8^W{ymSwc6*#+!)u)Tkir}LIB;h=hOc$IGsSo}J!5tg$7?JPPU8+5SD4|BkGpdWD# zuukGWLC9{wF@oeAy73}0{~FJiu@&#|fp{0&aTUGzlu}<1MBiZtejt#3LB9xKyI94y zpaBD-o%6jDd&FLz4-sUtHBR%5-hdd+_z)6@S0Kb)4MJi^4MJ;0FF}_jg!T&^F3vKR zgF^LWgY@t=W~oJ^Pak_w)9Kj<9ykr;XiK)CFPW#LgyCk?Nf_2sT|xYYmOF^*hzOx= zj@;&d2SjXhSKB&*k`IRuO1!}~kWlYvxe*>x2HIK{5bJ7N!uHsu+1G1Jc4S^5SZ;NF zL`J{+nuulK5Jl7M!Kaw!G!vfjQjj23BSoe_k*ZPTPX2UwVQ`Ld_{h!*cut!L+=k|R z+)C%>SQLMnjFB@;xk_Z)u1I!w^zngDup>IKh$p>4(zbxHnu{sI+H+a;wbUfpsw|lo1(o&TB!jF75=MwzMaE)-tvV;0WWYDAm=PDaJMp(lx2zrbzJ0F S;`IIF+9OZ9GEm}Asx3mf7gC7UB z>^VwY{5|D`+Lw?S$uR2sVWgu>DE~bl!5Vm;47zG>$xSr1CaQdv1b`$+9fmE!F0vcU zZIPEkp7}jyd#qM^v-JjQRbHXLu$MrA-z--FYS3^F19j}Pcl4vi!KN1H;gGxVmvBVo S6>+@55-N-)M=~hk1jaYqHDZ_m literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class46/Code05_HuffmanTree$NodeComp.class b/out/production/algorithmbasic2020/class46/Code05_HuffmanTree$NodeComp.class new file mode 100644 index 0000000000000000000000000000000000000000..44a9ae3e8462ae4e852dd9257e388bbc6689ef4b GIT binary patch literal 941 zcmah{OK;Oa5dOw->IV)Dp${mJHl(FVQ#F8i91>MR5hzikaA?&l+PK@|%CV6j{Z(9$ zs#fX&app%+W}O_WM97DoZ)f(~Z)axb&)=J0x3}n^ZbL)CfbO7(1w#2;T!@x0g0t3_ z(YbUJ!a~OjykwtHs5g!+n6M1k4(`Drth>I505kEm)oZ;60Tg!5qps z>4kA(V3V-+|34x){UDH0SB;G1*6EW8F%_sTp~@4Yf$$JOfsrSY?J|2UMq(`PT!Vh{ zM#BnQbqs7{m8~-&;1M3PM{3B}s>?k!;*56l62>mClOOEeRcK}k8xz)4f%#a&lT6jd zQ{HLikF5G^s``Q1O0~4p{0(!L*A+^$!go_EO@(zl&z@h$Mut_q$gqYj#tJ89qK22S KxEnPt&iV($4%9aQ literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class46/Code05_HuffmanTree$TrieNode.class b/out/production/algorithmbasic2020/class46/Code05_HuffmanTree$TrieNode.class new file mode 100644 index 0000000000000000000000000000000000000000..58e203e77578e738511aace34a5533c11c3a11c4 GIT binary patch literal 528 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 yh1LuxHOGF=wV!2bKEG6Q&19H4~Wt literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class47/Code01_StrangePrinter.class b/out/production/algorithmbasic2020/class47/Code01_StrangePrinter.class new file mode 100644 index 0000000000000000000000000000000000000000..74dc4aca78d87c587b3bbc6c707ff241e5f93c5e GIT binary patch literal 2052 zcmaJ?&r@4f6#i~<-+K@OEomRNB>b?o7y^M3Qu+gkcA_|pDe08jg&C)LkSB!F1e4Sm zH?G*}!f~f=I%UCzjT_r>95&T1I^&GG>e@e}gU0XPmmeUVG9>rMIrp6JobNmE{NJDV z>vhZ_6@U+Z3o-};rohP!=W}Or(+@c)tZ1gS1c84DFJ_U^iBXB=(G?Bq6@(z z?#s1Gv9w0_O}DgGTi5Q3%DpFu6F4c*RV%00oyzq}#rZ-&Mn`k$075ur;dBr-`UD16 zH=SxVd3iEjF1Qz`?lL5SxHlQN=2iqcwkqXSw_2SNu%fy2;^HV1oWWTO{Xv8g5$I{d zzu{;Q_lqR~BdUBY3=&l?$44Oy2k|D(wPPj(0y-w`ql?6+FbJH;6ie>XgZnFP<+ii3 z$(vB7yy|S;aVkZ1Zd}URda)`nlzD9hvy4|gQWGn&qnS2nuZgn?fMC4PaT6pVC7Gjl`ZI5c>(%_b~i>+;nHg{A2sF@C3bkwEK0;5WNA5%IrWl6v5SBNO64+{TgXfTN7;B zMP18+M#^Vcz!dLPBNve1&d2vxG0mM{*D(&m`Ue3a>I`I9NDBVIr_Sts^X%v4OV;0s zORXM%%}lCqBd_T3{(L0z8wPw!WB!ON#GhcOT~9wL1_s&VA!1SVpJP?$5g`|f)tDEx z)%DYjuG{RvjIJO;B$pY%tDwmQr_y6W3^Rku;l{&>$i#Q()T>9xj8yb=${BWClVjKh z$(gn#*)cqGDhGZ zam}&yD@f`>Qv`W|B`MOBaNHJYZi_UxL7K99CEK{E>64niOE7y5&?^og$ygMoX3WAs zo5aIc9*(WXWTW}b};9eyzdFUn6ki)nXrwCMjo@7 zMbAxk+axVdH90%mvc6mYHttu5C)xxp;S}qLIg&I_<)!#HtS;Z_v|4M#E|bI~1vkQ$TTiv3F{{u?JMK1sV literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class47/Code02_RestoreWays.class b/out/production/algorithmbasic2020/class47/Code02_RestoreWays.class new file mode 100644 index 0000000000000000000000000000000000000000..7d866f5d0671999180b277fa9b48f0b5a2f71f2d GIT binary patch literal 5457 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 D!B|7n literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class47/Code03_DinicAlgorithm$Dinic.class b/out/production/algorithmbasic2020/class47/Code03_DinicAlgorithm$Dinic.class new file mode 100644 index 0000000000000000000000000000000000000000..af2d32913f60ef60ce0defbf1d8abac13c1f9b90 GIT binary patch literal 3000 zcmah~ZF3vd6@IRESGyAH;Fu`2BZ<6_7+WTGz(GK43~n4J3X0tl$BB~^yq4C^CbHy6 zE0X|ifTpA`U&;(KEg4=i@WC)J!_Z0W4517kJIzdgK|l9D&^A?{dv`5|;)c;^_ug~Q zJ$ugcJontc{^!fD8x0KNcX33Znb2(*hzhixbrzkzl2e}R8=pDr7JPx|pjY<%Apxzc zdol(KF%xkc_rVr;s8DihwY^XD?XMKwJ^e3^(6umJnyXYj|IGYOH5CwJ{O3$;5O_ev zulru9Z@5}@F6O8EEYhzlaJ(z+ zf$ozsVuy__DxzDQb8FI)vXRDv{6^7T@XrWDPUWO|n~m+#tQG22`GJRQ?8Ghsz2?2_ zs?wSN!vZ_*UGM>ZCXP;YOE@#ct}BX#1fJx#W@ZVa!6dp*#<33rCI)Rh z4U!oUy+#E6^jWV|k~yD}Ict|1jfM<1Y~#n+&tOFvEU1WJ91z&FMo-==pL2@=noj+BTt@0CLobKG~-n=3nhy-HaOuP4yKdl;2MSD6|b7#a{5Sl|7Jb*6Uf6u~5^ zljl$1e$wEM)#qp2>V&LJpedAR%6drf@XFSrmD}V0~sT0gB^>Tfl?kz`s zr*Q6wvk*oy$*t5p&v%{wMgFN#F;61roeQI-%1fMapCD`cY%rzs&L8-y49Slg=j(2r z?wjv|XiaEzFc-a==eukHky9t7-*<|=xUgDq&$(Mr8q za7R4}=$3UmU9Z#(bvNeL{6m$RZ{mtT`kv4V*tv4qt?ri{)Fnnn*e!KgJ-d;`&J4DZ zh-|eSMPze?z>FFfIA?2X&WoJ0v8gq7GPRR2;nHK4v%f*(4>*=tfygBF=^HRJx6m@R zg8OfvReL&>xeoIqwDZ*(+Ly8E_~nRLYW!o(vppmIzKY*KvN_uN1p{lC<1>RepF5#r z7t`)!mwp)A(1kv}ALr_`=)qw;f(bUmGxXfXeeF!#V~MidV>pX*e9KXZHi3DLHzLxY z8}BJg2;iScaiPp`L2X|n%1VI~Os#zxJF>bQ+(PG6GL>FIm#jmUm0U*8H)u)dH_;c` zlvgUL-Q|^9_0p$9KUrQxmA8do0-JOUk0Oc3SXMuVu@}c#oGfQ=kVmtK6R4;nm>U+t z5>MbfM;c>{qso!aDr#`TTHa;^osoL9p-hsgJpK;0Gxx39O+1yRrR|wzJUcx^Q&O6i z8h=lJM)v^yAiXD<>{CR4ALTJXDGZ_;Ln^&Y5W1OO5BxB_9@JHO5&ABw^d#;kBL7B2 zbTT0ClORL!DTBngxN-|4RL|(x?xe!$AagRm()Z~ddQzX*y^QCs;w`?$zrmhm9L*Y9 zHkyb^9uh_XF{%0x=V(!)TeT*lYE|x0gU)?shj|^7S*t@&Sp8SgFQ-%Qqess52?<5Q zQct5-pB_(GscVQXp>21<3KF{4uBK!JCgh5cydP1BA8RN^Sr zdyo_#;xk924wJ6u@H+Ci!Yk?z7{hxc?iw$pPw4YGmHa1aRg!<2u$;v+cnKGX+<5{f zDYqz*SCzh_jCx54LW*^z$-+vLg_V#6i*YaFWpy?_z$@IZcGnfd@``YMd{XIfU*vIfE1n(XCs z^@u2DKDx^gcr=O0N*>!orbtjQ)87aQQ*0>GWYA=iv|Pi%jIyK@d+D1vO(9QZ^>@(Q zVNQ|IgkHRXsSYa`vp-EGjD$X&HPT!eO1~#LZB==kmNYLl@(E*2`lDZos5X2^Zx103c4(XGt!5QCxKjRHX(V5Ga>R=g)wiXyMQe_D7FMJ}K!7mvy bg3I`odcTQZ^W8>^g*WjV7S+l3ZxQ=1B#U@I literal 0 HcmV?d00001 diff --git a/out/production/algorithmbasic2020/class47/Code03_DinicAlgorithm$Edge.class b/out/production/algorithmbasic2020/class47/Code03_DinicAlgorithm$Edge.class new file mode 100644 index 0000000000000000000000000000000000000000..afbf964f1dad75da4a42a03ee82ec6266ee8ea09 GIT binary patch literal 570 zcmah`%TB^j5Iwh4pjZJBUkE;s1#}@Mnz)dd7$30-!G(scDfJ2^rA^x6f4LwgF8lyL zNjknmoeX4j`<+qhhOXoHoyb%8 zC#WYQFBWKY|JQU(H4e{!#}&xkgwx2Cm!9fg`E`^%wHJYGPsYhr7$+HQ3)KGXBw*S> zAfq$2B1vVsS_gJGwFV#sp>{}*6aHAP;tLD@j3vg)L_V{1+OqWwVQtKiv8ppHShX37 zPmF6==Dk9Ox^=9=z#8&cXN3wQfc4Gi%Nh|Y@y%p)2TpbCHaiq|r{PYTh z(|Khxg+3kq7@$pAE?+BG4Cb58=l7U{I$ppKnN_(lZ8_@#5i&>fD%}wsC-5ReaOw=? z|IFrG(|(#+CxEn$QH%+6SLLdabL^7zZ!;!Ro-b|R6G$nWjkE*c35#i02+PZOMZ+l_ z8JrgAdJ0{W14dR;?kt7v9&*hl8nB(!aZc4XQnDP+&~RR$|4_IHkAhL4yz=^}%Hfm4jA!#dZlWwG2A=!066cj6|5W5-yHupG9 zL`u>#sClI5%hKwMtOWpQxFHZPI(4^XOq&X&-UGYvl&YXWV%G5d8AE~UX?RCq=up^3 z8eQ3O#c_PkcV%tH@Ryyk*B-^YaV+9J4R=(F-4z%KS|n%y(_V8{jZCAJ8eKOnOTOc7 z3jEUCDSLtqqt~TfwhV8i;5e)GT6TYtnr@y^oZqY&2Z%QV+!!a>=0@K$k&~8HG<_r6 ziVp;0Ibu90CI^Lpo>#*qr=GTgJrX=))=xpALDha=#s?*$fi)R8T$Ih$$eJ&HoHJ4V zT0ozOa-HBQ!(DKXjO{@D5wI_CRcxRguX5EJ0(cFRJjIaZgbkF%UkGzF0zW^7w)haS z9louT+vvO$p6c)W4G$DO5f0W!uttMbdyLd#GQ5LhldYkNSTdH>e#M!96%W=#u`cFv&>uainpH-$Gy>ExWpWl}NvvvGw~m|mBWBNd_VCHkBq z+8Nx%HBuVmcpKAr6Rq^vhU>hGp_6gtNre>F^mv1Ng3%N(!%B28vRQIlaFh3E5q^SB z4Vn1M2@V;7}(_pQ maxLen) { + maxLen = j - i + 1; + begin = i; + } + } + } + return s.substring(begin, begin + maxLen); + } + } +} diff --git a/src/aaa/Main.java b/src/aaa/Main.java new file mode 100644 index 0000000..300f7ec --- /dev/null +++ b/src/aaa/Main.java @@ -0,0 +1,47 @@ +package aaa; + +import java.util.Scanner; + +public class Main { + private static int n; + private static int[] arr; + private static int[] sum; + private static int[][] dp; + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + System.out.print("请输入石子的堆数:"); + n = sc.nextInt(); + arr = new int[2*n]; + sum = new int[2*n]; + for(int i = 1; i <= n; i++){ + arr[i] = sc.nextInt(); + sum[i] = sum[i - 1] + arr[i]; + } + for(int i = n + 1; i <= 2 * n - 1; i++){ + arr[i] = arr[i - n]; + sum[i] = sum[i - 1] + arr[i]; + } + minFun(); + } + + private static void minFun(){ + dp = new int[2 * n][2*n]; + for(int r = 1; r <= n - 1; r++){ + for(int i = 1; i <= 2 * n - 1; i++){ + int j = i + r; + if(j >= 2 * n){ + continue; + } + dp[i][j] = dp[i][i] + dp[i + 1][j] + sum[j] - sum[i - 1]; + for(int k = i + 1; k < j; k++){ + dp[i][j] = Math.min(dp[i][j], dp[i][k] + dp[k + 1][j] + sum[j] - sum[i - 1]); + } + } + } + int result = dp[1][n]; + for(int i = 2; i <= n; i++){ + result = Math.min(result, dp[i][n - 1 + i]); + } + System.out.println("最低得分:"+result); + } +} diff --git a/src/aaa/Main2.java b/src/aaa/Main2.java new file mode 100644 index 0000000..9e5af16 --- /dev/null +++ b/src/aaa/Main2.java @@ -0,0 +1,45 @@ +package aaa; + +import java.util.Arrays; +import java.util.Scanner; + +public class Main2 { + public static void main(String[] args) { + + Scanner sc = new Scanner(System.in); + + while(sc.hasNext()) { + int n = sc.nextInt(); + //所给数组 下标从1~n + int[] num = new int[n+1]; + //前缀和数组 + int[] sum = new int[n+1]; + //dp数组,dp[i][j]表示i到j合并的最小代价,范围是1~n + int[][] dp = new int[n+1][n+1]; + //dp数组初始化 + for(int i=0;i<=n;i++) { + Arrays.fill(dp[i],Integer.MAX_VALUE); + } + sum[0] = 0; + //sum数组初始化 + for(int i=1;i<=n;i++) { + num[i] = sc.nextInt(); + sum[i] = num[i] + sum[i-1]; + dp[i][i] = 0; + } + //区间长度len从小到大 因为大区间依赖于小区间 + for(int len=1; len res = split(str.length()); + for (Integer re : res) { + System.out.print(re+" "); + } + System.out.println(); + } + } + + public static void getNum(String str) { + char[] chars = str.toCharArray(); + int index = 0; + int a=0,b=0; + for (char aChar : chars) { + if(aChar == 'D') a++; + if(aChar == 'K') b++; + nums[index][0] = a; + nums[index++][1] = b; + } + } + + public static List split (int len) { + List res = new ArrayList<>(); + for (int i = 0; i < len; i++) { + int a = nums[i][0]; + int b = nums[i][1]; + if(a == 0 || b == 0) { + res.add(i+1); + continue; + } + if (common(a,b) == 1) { + res.add(1); + }else { + int max = 1; + for(int j=2;j<=common(a,b);j++) { + if(a % j != 0 || b % j != 0) continue; + int width = a/j + b/j; + int right = width-1; + boolean flag = true; + while (right < i) { + int m = nums[right][0]; + int n = nums[right][1]; + if(m/n != a/b) { + flag = false; + break; + } + right = right + width; + } + if(flag) max = Math.max(max,j); + } + res.add(max); + } + } + return res; + } + + public static int common(int a, int b) { + if(a 0) { + cn = next[cn]; + }else { + next[i++] = 0; + } + } + return next; + } + } + + static class solution1 { + public static int manacher(String s) { + if(s == null || s.length() == 0) return 0; + char[] str = manacherString(s); + int[] pArr = new int[str.length]; + int C = -1; + int R = -1; + int max = Integer.MAX_VALUE; + for (int i = 0; i < str.length; i++) { + pArr[i] = R > i ? Math.min(pArr[2*C-1],R-i) : 1; + while (i+pArr[i] < str.length && i-pArr[i] > -1) { + if(str[i+pArr[i]] == str[i-pArr[i]]) { + pArr[i]++; + }else { + break; + } + } + if(i-pArr[i] > R) { + R = i + pArr[i]; + C = i; + } + max = Math.max(max,pArr[i]); + } + return max-1; + } + + public static char[] manacherString(String str) { + char[] charArr = str.toCharArray(); + char[] res = new char[str.length()*2+1]; + int index=0; + for (int i = 0; i < res.length; i++) { + res[i] = (i&1) == 0 ? '#' : charArr[index++]; + } + return res; + } + + } + + static class solution2 { + public static int getIndexOf(String s1 ,String s2) { + if(s1 == null || s2 == null || s2.length() < 1 || s1.length() < s2.length()) return -1; + char[] str1 = s1.toCharArray(); + char[] str2 = s2.toCharArray(); + int x = 0; + int y = 0; + int[] next = getNextArray(str2); + while (x < str1.length && y < str2.length) { + if(str1[x] == str2[y]) { + x++; + y++; + }else if(next[y] == -1) { + x++; + }else { + y = next[y]; + } + } + return y == str2.length ? x-y : -1; + } + + public static int[] getNextArray(char[] str2) { + if(str2.length == 1) return new int[]{-1}; + int[] next = new int[str2.length]; + next[0] = -1; + next[1] = 0; + int i =2; + int cn = 0; + while (i < next.length){ + if(str2[i-1] == str2[cn]) { + next[i++] = ++cn; + } else if(cn > 0) { + cn = next[cn]; + } else { + next[i++] = 0; + } + } + + return next; + } + + } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +} diff --git a/src/class27/Code01_KMP.java b/src/class27/Code01_KMP.java index 68a51de..c1a6994 100644 --- a/src/class27/Code01_KMP.java +++ b/src/class27/Code01_KMP.java @@ -1,7 +1,9 @@ package class27; - +//KMP : 判断s2是否是s1的子串 public class Code01_KMP { - + /* + next数组:记录s2的每个位置的相同的前缀字符串和后缀字符串(顺序都是左->右)的最长长度 + */ public static int getIndexOf(String s1, String s2) { if (s1 == null || s2 == null || s2.length() < 1 || s1.length() < s2.length()) { return -1; @@ -34,7 +36,7 @@ public class Code01_KMP { next[0] = -1; next[1] = 0; int i = 2; // 目前在哪个位置上求next数组的值 - int cn = 0; // 当前是哪个位置的值再和i-1位置的字符比较 + int cn = 0; // 当前是哪个位置的值在和i-1位置的字符比较 while (i < next.length) { if (str2[i - 1] == str2[cn]) { // 配成功的时候 next[i++] = ++cn; diff --git a/src/class27/Code02_TreeEqual.java b/src/class27/Code02_TreeEqual.java index 657373a..bf9bda2 100644 --- a/src/class27/Code02_TreeEqual.java +++ b/src/class27/Code02_TreeEqual.java @@ -13,7 +13,7 @@ public class Code02_TreeEqual { value = v; } } - + //判断small是否为big的子树,注意子树必须是以其根节点完整的子树,而不是一部分 public static boolean containsTree1(Node big, Node small) { if (small == null) { return true; diff --git a/src/class27/Code03_IsRotation.java b/src/class27/Code03_IsRotation.java index 605cb81..3dc78a4 100644 --- a/src/class27/Code03_IsRotation.java +++ b/src/class27/Code03_IsRotation.java @@ -1,11 +1,15 @@ package class27; public class Code03_IsRotation { - + /* + 判断a是否是b的旋转串 + */ public static boolean isRotation(String a, String b) { if (a == null || b == null || a.length() != b.length()) { return false; } + //自己拼接自己后,b2中就包含所有的b的旋转串,举例就很清晰了 + //12345 1234512345 String b2 = b + b; return getIndexOf(b2, a) != -1; } diff --git a/src/class28/Code01_Manacher.java b/src/class28/Code01_Manacher.java index c75975f..1059a86 100644 --- a/src/class28/Code01_Manacher.java +++ b/src/class28/Code01_Manacher.java @@ -1,5 +1,7 @@ package class28; - +/* +这个算法,感觉得完整看一遍逻辑才行 + */ public class Code01_Manacher { public static int manacher(String s) { @@ -10,7 +12,7 @@ public class Code01_Manacher { char[] str = manacherString(s); // 回文半径的大小 int[] pArr = new int[str.length]; - int C = -1; + int C = -1;//中心位置 // 讲述中:R代表最右的扩成功的位置 // coding:最右的扩成功位置的,再下一个位置 int R = -1; @@ -18,6 +20,7 @@ public class Code01_Manacher { for (int i = 0; i < str.length; i++) { // 0 1 2 // R第一个违规的位置,i>= R // i位置扩出来的答案,i位置扩的区域,至少是多大。 + //在确定是回文的基础上,继续向左右扩展比较,不符合立刻break pArr[i] = R > i ? Math.min(pArr[2 * C - i], R - i) : 1; while (i + pArr[i] < str.length && i - pArr[i] > -1) { if (str[i + pArr[i]] == str[i - pArr[i]]) @@ -26,12 +29,15 @@ public class Code01_Manacher { break; } } + //更新R和C if (i + pArr[i] > R) { R = i + pArr[i]; C = i; } max = Math.max(max, pArr[i]); } + //最大回文半径-1 就是原始字符串中的最大回文子串长度,这个按奇偶举例就明白了 + //121 #1#2#1# 就是4-1=3 ; 1221 #1#2#2#1# 就是5-1=4 均符合max-1 return max - 1; } diff --git a/src/class28/Code02_AddShortestEnd.java b/src/class28/Code02_AddShortestEnd.java index 00d961c..8d9e3c4 100644 --- a/src/class28/Code02_AddShortestEnd.java +++ b/src/class28/Code02_AddShortestEnd.java @@ -1,7 +1,10 @@ package class28; public class Code02_AddShortestEnd { - + /* + 在一个字符串后面追加字符,添加最少的字符,使之成为回文串,返回追加的字符串 + 在manacher算法基础之上,R到最右边时停止即可。 + */ public static String shortestEnd(String s) { if (s == null || s.length() == 0) { return null; @@ -29,6 +32,8 @@ public class Code02_AddShortestEnd { break; } } + //倒着填 注意下标转换,举例说明 + //ab1221 需要ab #a#b#1#2#2#1# char[] res = new char[s.length() - maxContainsEnd + 1]; for (int i = 0; i < res.length; i++) { res[res.length - 1 - i] = str[i * 2 + 1]; diff --git a/src/class33/Hash.java b/src/class33/Hash.java index 2c54b7d..572a839 100644 --- a/src/class33/Hash.java +++ b/src/class33/Hash.java @@ -1,48 +1,48 @@ -package class33; - -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; -import java.security.Security; - -import javax.xml.bind.DatatypeConverter; - -public class Hash { - - private MessageDigest hash; - - public Hash(String algorithm) { - try { - hash = MessageDigest.getInstance(algorithm); - } catch (NoSuchAlgorithmException e) { - e.printStackTrace(); - } - } - - public String hashCode(String input) { - return DatatypeConverter.printHexBinary(hash.digest(input.getBytes())).toUpperCase(); - } - - public static void main(String[] args) { - System.out.println("支持的算法 : "); - for (String str : Security.getAlgorithms("MessageDigest")) { - System.out.println(str); - } - System.out.println("======="); - - String algorithm = "MD5"; - Hash hash = new Hash(algorithm); - - String input1 = "zuochengyunzuochengyun1"; - String input2 = "zuochengyunzuochengyun2"; - String input3 = "zuochengyunzuochengyun3"; - String input4 = "zuochengyunzuochengyun4"; - String input5 = "zuochengyunzuochengyun5"; - System.out.println(hash.hashCode(input1)); - System.out.println(hash.hashCode(input2)); - System.out.println(hash.hashCode(input3)); - System.out.println(hash.hashCode(input4)); - System.out.println(hash.hashCode(input5)); - - } - -} +//package class33; +// +//import java.security.MessageDigest; +//import java.security.NoSuchAlgorithmException; +//import java.security.Security; +// +//import javax.xml.bind.DatatypeConverter; +// +//public class Hash { +// +// private MessageDigest hash; +// +// public Hash(String algorithm) { +// try { +// hash = MessageDigest.getInstance(algorithm); +// } catch (NoSuchAlgorithmException e) { +// e.printStackTrace(); +// } +// } +// +// public String hashCode(String input) { +// return DatatypeConverter.printHexBinary(hash.digest(input.getBytes())).toUpperCase(); +// } +// +// public static void main(String[] args) { +// System.out.println("支持的算法 : "); +// for (String str : Security.getAlgorithms("MessageDigest")) { +// System.out.println(str); +// } +// System.out.println("======="); +// +// String algorithm = "MD5"; +// Hash hash = new Hash(algorithm); +// +// String input1 = "zuochengyunzuochengyun1"; +// String input2 = "zuochengyunzuochengyun2"; +// String input3 = "zuochengyunzuochengyun3"; +// String input4 = "zuochengyunzuochengyun4"; +// String input5 = "zuochengyunzuochengyun5"; +// System.out.println(hash.hashCode(input1)); +// System.out.println(hash.hashCode(input2)); +// System.out.println(hash.hashCode(input3)); +// System.out.println(hash.hashCode(input4)); +// System.out.println(hash.hashCode(input5)); +// +// } +// +//}