|
发表于 2022-10-29 14:12:33
|
显示全部楼层
- #include <iostream>
- #include <vector>
- #include <algorithm>
- int main(){
- int a, n;
- std::cin >> a >> n;
- std::vector<unsigned int> buffer(n + 1, 0);
- std::generate_n(buffer.begin(), n, [&n, a]()->unsigned int{ return (n--) * a; });
- std::transform(buffer.cbegin(), buffer.cend(), buffer.begin(), [&n, &a](const auto& value)->unsigned int{
- a = value + n;
- return n = (a * 0x67) >> 10, a - ((n << 3) + (n << 1));
- });
- std::for_each(buffer.crbegin(), buffer.crend(), [&n](const auto& value){
- if(n || value) { n = 1; std::cout << value; }
- });
- return 0;
- }
复制代码 |
|