>>795
>(i / 1000) == static_cast<std::uint64_t> ...

問題文が悪かったかな?
>その数の千の位の数を一の位にもってき
て元の一の位の数を十の位に、十の位の数を百の位に、百の位の数を千の位にシフトさせた数は

とさせてほしい。