鱼C论坛

 找回密码
 立即注册
查看: 2872|回复: 9

[技术交流] 又又又是一个敲击简单的程序

[复制链接]
发表于 2022-10-28 20:41:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 陈尚涵 于 2022-10-28 21:17 编辑

题目:爱学习的小明
难度:t1-t2(敲击简单)
题目描述:作为小学生的小明学会了加减竖式,但是有些东西光靠竖式可能没那么快能算出来,你能不能帮他写个程序算呢?
输入:a和n,1<=a<10,1<=n<=10
输出:a+aa+aaa+aaaa+....(n个a)
输入样例:1 5
输出样例:12345
解释:
1 5
指1+11+111+1111+111111=12345
答案:
游客,如果您要查看本帖隐藏内容请回复

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-10-28 20:52:51 | 显示全部楼层
a可以等于10 ?
等于10的时候是个什么情况?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-10-28 20:59:34 | 显示全部楼层
人造人 发表于 2022-10-28 20:52
a可以等于10 ?
等于10的时候是个什么情况?

应该是1<=a<10,敲错了,望见谅
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-28 21:20:00 | 显示全部楼层
人造人 发表于 2022-10-28 20:52
a可以等于10 ?
等于10的时候是个什么情况?

楼主好像修改了?a 小于 10
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-28 21:33:33 | 显示全部楼层
#include <iostream>

using std::cout, std::cin, std::endl;
int main(void) {
        unsigned a, n, sum;
        cin >> a >> n;
        for (int num = sum = a; n - 1; --n) {
                num = num * 10 + a;
                sum += num;
        }
        cout << sum << endl;
        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-28 21:37:18 | 显示全部楼层
傻眼貓咪 发表于 2022-10-28 21:20
楼主好像修改了?a 小于 10

是的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-10-28 21:39:55 | 显示全部楼层
发布的帖子审核不过去。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-28 22:05:34 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 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;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-2 23:20:09 | 显示全部楼层
来看看。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-27 11:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表