A=B
Not enough ratings
A=B Tricks and Hints
By Comar
This guide will not give any complete solutions to levels. Instead, it will discuss general tricks and partial hints for specific puzzles.
   
Award
Favorite
Favorited
Unfavorite
A=B Tricks and Hints
This guide will not give any complete solutions to levels. Instead, it will discuss some general tricks that are useful in many levels. For some specific levels where I can think of hints or info on general approaches, I will give the hint, rating it on a scale 1 to 5 of how much of a giveaway/spoiler it is.

If you are looking for complete solutions I recommend this guide: https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=2655344262
If you are looking for which levels can be completed with fewer lines than the challenge, check out: https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=2788733376
Tricks
  1. For levels that depend on how many of a letter there are, it's often helpful to sort the string into alphabetical order to group letters together.

  2. It's often helpful to use control characters, temporary characters that can move through the string to cause other effects. For istance, suppose you wanted to duplicate all the characters in a string. You could start by placing a control X at the beginning of the string. Then have commands like "Xa=aaX" to move it through the string, duplicating as you go. I like to use a capital letter abbreviating a word, like M for move, S for skip, etc, to keep it clear in my head.

    • One trick for reducing the lines of code is to use 8 input characters as a control. So instead of X, use aaaaaaaa. Because the input is usually less than eight long, eight characters is unique. But it lets you reduce one line from code sometimes. Instead of needing three characters to move through the string, like "Xa=aX, Xb=bX, Xc=cX", you can ignore the one for a - since either way you have 9 a's - and just use "aaaaaaaab=baaaaaaaa, aaaaaaaac=caaaaaaaa".

    • When you can, use existing input or output symbols for control characters, or remove symbols at the same time as control characters. If the level has "aa,bb" as input, just use the , as your control character instead of using something new, or if the character starts at the start and only is needed for the first string, use "X,=" to get rid of both at once.

  3. When you need to have a specific place or order to move things to for processing, you can always move things to the start or end using the keywords. Suppose you had two control characters in different places and wanted to compare the characters next to them. You could copy each character to the stat of the string and then they're adjacent to be compared. Just make sure you clean up afterwards.

  4. Chapter 5 math levels - It's often easier to work with unary than binary. Convert one or both arguments into a's, the same way you did in 5-1, before performing mathematical operations.

  5. Chapter 6 no-keyword levels - Think about which characters or patterns are present in inputs but not outputs. Use those to create the initial control characters. E.g. if the input has a but the output doesn't, start with "a=XYZA" where XYZ are control characters you neded initialized and A is a replacement for a.

    • Do note that you will need to design your control characters so that it's okay to have multiple. One way to do this is to have one character that moves left and another character that moves right, tht cancle out. E.g. "a=LAR" and "RL=", where L is set up to move left and R right.
Chapter 1
  • 1-4 Singleton 2
    • Hint (3/5): First, reduce any number of a's down to only two.

  • 1-5 Sort
    • Hint (1/5): Just always move a's left, and always move c's right.

  • 1-6 Compare
    • Hint (1/5): Sort first.
    • Hint (3/5): Then reduce from the middle. Deal with duplicates at the end.
Chapter 2
  • 2-2 AAA
    • Hint (1/5): Get rid of b's and c's first.
    • Hint (2/5): Check for more than three letters before checking for anything else.

  • 2-3 Exactly Three
    Very similar to the previous.
    • Hint (1/5): Change everything to one type of letter.
    • Hint (2/5): Check for more than three letters before checking for anything else.

  • 2-4 Remainder
    • Hint (1/5): Change everything to one type of letter.
    • Hint (3/5): Remove by threes, only outputting once you can't anymore.

  • 2-5 Odd
    • Hint (1/5): Sort, then remove by twos.
    • Hint (2/5): When removing, don't make two zero, make three one.

  • 2-6 The Only
    • Hint (2/5): Mark groups of letters as goups, then mark singletons as singletons.
    • Hint (4/5): Reduce groups into a control character, but don't remove the control character until after you've reduced singletons to another control. Now just see if you have exactly one singleton.

  • 2-7 Ascend
      Sort of like 1-6 Compare
    • Hint (1/5): Sort first, then middle out.
    • Hint (2/5): Compare a to b first, the compare the result to c.
    • Hint (4/5): Convert ab to a control character. Turn any leftover b's to that control character as well. Leftover a's mean something was wrong. Now it's easy to compare to c.

  • 2-8 Most
      Very similar to the previous problem.
    • Hint (2/5): Do what you did for the last problem, but keep the control characters around and have them be converted by the input symbol that remains.

  • 2-9 Least
      Still has a somewhat similar start to the last two problems.
    • Hint (1/5): Eliminate the least common letter.
    • Hint (2/5): Once you're down to only two letters, it's easy to see what's missing.
    • Hint (3/5): You can use control characters to remove an a, b, and c in sync. Let "ab=x", then "xc=" has removed one of each.
Chapter 3
  • 3-3 A to B 2
    • Hint (1/5): From start to end to start.
    • Hint (2/5): Move the starting a's (in some form) to the end, then back, converting them to b's.

  • 3-5 Match
    • Hint (1/5): Pop one from the back to the front and compare.
    • Hint (2/5): Convert each letter to a corresponding control character.

  • 3-6 Most 2
    • Hint (1/5): Like in 2-8 Most, remove letters in a synchronized way.
    • Hint (2/5): The same character can mean different things depending on whether it's at the start or end of the string.

  • 3-7 Palindrome
    • Hint (1/5): Convert letters from the front to the back, and remove matches.
    • Hint (3/5): For extra efficiency, instead of one control character, use a group of characters with a common prefix and suffix.
Chapter 4
.
1 Comments
Zednaught 6 Aug, 2023 @ 5:33pm 
Just gonna chime in to anyone reading. Beware of using unary on the Math levels, at least for the multiplication and division. There's a time limit that I just discovered on levels, and unary may be too slow. My working solution went from binary to unary, but it's too slow.