鱼C论坛

 找回密码
 立即注册
查看: 2182|回复: 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 | 显示全部楼层
  1. #include <iostream>

  2. using std::cout, std::cin, std::endl;
  3. int main(void) {
  4.         unsigned a, n, sum;
  5.         cin >> a >> n;
  6.         for (int num = sum = a; n - 1; --n) {
  7.                 num = num * 10 + a;
  8.                 sum += num;
  9.         }
  10.         cout << sum << endl;
  11.         return 0;
  12. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> 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 | 显示全部楼层
  1. #include <iostream>
  2. #include <vector>
  3. #include <algorithm>
  4. int main(){
  5.     int a, n;
  6.     std::cin >> a >> n;
  7.     std::vector<unsigned int> buffer(n + 1, 0);
  8.     std::generate_n(buffer.begin(), n, [&n, a]()->unsigned int{ return (n--) * a; });
  9.     std::transform(buffer.cbegin(), buffer.cend(), buffer.begin(), [&n, &a](const auto& value)->unsigned int{
  10.         a = value + n;
  11.         return n = (a * 0x67) >> 10, a - ((n << 3) + (n << 1));
  12.     });
  13.     std::for_each(buffer.crbegin(), buffer.crend(), [&n](const auto& value){
  14.         if(n || value) { n = 1; std::cout << value; }
  15.     });
  16.     return 0;
  17. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-28 18:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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