APPLES and BANANAS solution (with picture)
Somehow... this weird but fun solution came about:\n\n1. Determine A or B is bigger. "Lay down" the more frequent character in a column of pairs, until we run o
Somehow... this weird but fun solution came about:\n\n1. Determine A or B is bigger. "Lay down" the more frequent character in a column of pairs, until we run out of the more frequent character.\n2. Row by row, we "top off" each pair of characters with the less frequent character, until we run out of the less frequent character. \n3. String the rows up!\n\n![image](https://assets.leetcode.com/users/easternbadge/image_1581662561.png)\n\n```\nclass Solution:\n    def strWithout3a3b(self, A: int, B: int) -> str:\n        if A > B:\n            numberToLayDown = A\n            numberToTopUp = B\n            charToLayDown = "a"\n            charToTopUp = "b"\n        else:\n            numberToLayDown = B\n            numberToTopUp = A\n            charToLayDown = "b"\n            charToTopUp = "a"\n\n            \n        repetition = int(numberToLayDown / 2)\n        remainder = numberToLayDown % 2\n        \n        stk = []\n        for i in range(repetition):\n            stk.append(charToLayDown + charToLayDown)\n        if remainder:\n            stk.append(charToLayDown)\n        \n        stkSize = len(stk)\n        stkIdx = 0\n        while numberToTopUp > 0:\n            stk[stkIdx] += charToTopUp\n            stkIdx = (stkIdx + 1) % stkSize\n            numberToTopUp -= 1\n            \n        return "".join(stk)\n```\n\n\n
[]