Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import sys
- from io import BytesIO, IOBase
- from collections import deque, defaultdict
- import bisect
- # from heapq import heappop, heapify
- import math
- from itertools import accumulate
- # from functools import cache
- def ii(): return int(input())
- def si(): return input()
- def mi(): return map(int,input().strip().split())
- def msi(): return map(str,input().strip().split())
- def li(): return list(mi())
- MOD = 1000000007
- def Solve():
- s = input()
- n = len(s)
- arr = list(int(s[i]) for i in range(n))
- for i in range(1, n):
- if arr[i] != 0 and arr[i] > arr[i-1]:
- j, cnt = i, arr[i]
- while j > 0 and cnt > arr[j-1]+1:
- cnt -= 1
- arr[j], arr[j-1] = arr[j-1], arr[j]
- arr[j-1] = cnt
- j -= 1
- print(''.join([str(arr[i]) for i in range(n)]))
- def main():
- for tt in range(ii()):
- Solve()
- # region fastio
- BUFSIZE = 8192
- class FastIO(IOBase):
- newlines = 0
- def __init__(self, file):
- self._file = file
- self._fd = file.fileno()
- self.buffer = BytesIO()
- self.writable = "x" in file.mode or "r" not in file.mode
- self.write = self.buffer.write if self.writable else None
- def read(self):
- while True:
- b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
- if not b:
- break
- ptr = self.buffer.tell()
- self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr)
- self.newlines = 0
- return self.buffer.read()
- def readline(self):
- while self.newlines == 0:
- b = os.read(self._fd, max(os.fstat(self._fd).st_size, BUFSIZE))
- self.newlines = b.count(b"\n") + (not b)
- ptr = self.buffer.tell()
- self.buffer.seek(0, 2), self.buffer.write(b), self.buffer.seek(ptr)
- self.newlines -= 1
- return self.buffer.readline()
- def flush(self):
- if self.writable:
- os.write(self._fd, self.buffer.getvalue())
- self.buffer.truncate(0), self.buffer.seek(0)
- class IOWrapper(IOBase):
- def __init__(self, file):
- self.buffer = FastIO(file)
- self.flush = self.buffer.flush
- self.writable = self.buffer.writable
- self.write = lambda s: self.buffer.write(s.encode("ascii"))
- self.read = lambda: self.buffer.read().decode("ascii")
- self.readline = lambda: self.buffer.readline().decode("ascii")
- sys.stdin, sys.stdout = IOWrapper(sys.stdin), IOWrapper(sys.stdout)
- input = lambda: sys.stdin.readline().rstrip("\r\n")
- # endregion
- if __name__ == "__main__":
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement