68. 恭喜发财 利是窦来

成绩 5 开启时间 2022年11月21日 星期一 08:00
折扣 0.8 折扣时间 2022年12月18日 星期日 23:55
允许迟交 关闭时间 2022年12月25日 星期日 23:55

在中国,过春节时人们有给孩子压岁钱(粤语称为利是)的习俗。

最早的压岁钱出现于汉代,又叫压胜钱,并不在市面上流通,而是铸成钱币形式的玩赏物,有避邪的功能。钱币正面一般铸有“万岁千秋”、“去殃除凶”等吉祥话和龙凤、龟蛇、双鱼等吉祥图案。

据说嘉兴府有一户姓管的人家,夫妻老年得子,十分珍爱。在年三十晚上,为防止“祟”来侵扰一直逗孩子玩,小孩用红纸包了八枚铜钱,包了又拆,拆了又包,睡下以后,包着的八枚铜钱就放在枕边。半夜里,一阵阴风吹过,黑矮的小人正要用他的白手摸孩子的头,突然孩子枕边迸出一道金光,祟尖叫着逃跑了。

于是这件事传扬开来,大家纷纷效仿,在大年夜用红纸包上钱给孩子,祟就不敢再来侵扰了。因而人们把这种钱叫“压祟钱”,“祟”与“岁”发音相同,日久天长,就被称为 “压岁钱”了。

现在有 N 个人,他们都有小孩,春节来了,他们要发压岁钱给朋友的小孩,而他们自己的小孩也会收到压岁钱。为了简单,他们在发压岁钱的时候,使用以下的计算方法,譬如某甲有 100 块,它要给另外三个人的小孩发压岁钱,则每个小孩会分到 100/3 = 33 块,剩余的 1 块就不发了。

给你这 N 个人的信息,以及他们把压岁钱发给了谁的小孩,请你计算他们每个人的小孩收到的压岁钱和他们发出去的压岁钱的差额是多少。

输入

第 1 行: 一个整数 N(2 <= N <= 10)
第 2..N+1 行: 每行是一个人名,每个名字不超过 14 个字符
第 N+2..结束: N 组按照以下规则组织的数据:

组中的第一行为送出压岁钱的人名。
第二行包括两个数字,第一个是该人有多少钱(0~2000),第二个是它要把钱发给几个人的小孩,用 NGi 表示(0 ≤ NGi ≤ N-1).
如果 NGi 为非零,则下面的 NGi 行会列出接受压岁钱的人的名字。

输入样例

5 dave laura owen vick amr dave 200 3laura owen vick owen 500 1dave amr 150 2vick owen laura 0 2amr vick vick 0 0 

输出格式

输出为 N 行,每行上是一个人名与它收到和送出的压岁钱之差额,这两项之间有一个空格。这 N 行的顺序应该和输入中第 2~N+1 行的顺序相同。

输出样例

dave 302 laura 66 owen -359 vick 141 amr -150 

  测试输入 期待的输出 时间限制 内存限制 额外进程
测试用例 2 以文本方式显示

  1. 5↵
  2. dave↵
  3. laura↵
  4. owen↵
  5. vick↵
  6. amr↵
  7. dave↵
  8. 200 3↵
  9. laura↵
  10. owen↵
  11. vick↵
  12. owen↵
  13. 500 1↵
  14. dave↵
  15. amr↵
  16. 150 2↵
  17. vick↵
  18. owen↵
  19. laura↵
  20. 0 2↵
  21. amr↵
  22. vick↵
  23. vick↵
  24. 0 0↵
以文本方式显示

  1. dave 302↵
  2. laura 66↵
  3. owen -359↵
  4. vick 141↵
  5. amr -150↵
1秒 64M 0
#include<stdio.h>
#include<string.h>
int main(void)
{int N;int moy[11];/*每人的钱数*/char name0[11][10] = {0}, name1[11][10] = {0}, name2[11][10] = {0};/*0:初始顺序,1:发钱顺序,2:被发钱的人的名单*/memset(moy, 0, sizeof(moy));scanf("%d", &N);for (int i = 1; i <= N; i++)scanf("%s", name0[i]);for (int i = 1; i <= N; i++){int money;int n;/*把钱分给多少人*/scanf("%s", name1[i]);scanf("%d %d", &money, &n);for (int k = 1; k <= N; k++)/*匹配name1与name0*/{if (strcmp(name1[i], name0[k]) == 0){moy[k] -= money;if (n != 0 && money % n != 0)//n!=0 !!!!!!!!!!!moy[k] += (money % n);break;}}for (int j = 1; j <= n; j++){scanf("%s", name2[j]);for (int k = 1; k <= N; k++)/*判断钱发给了谁*/{if (strcmp(name0[k], name2[j]) == 0){moy[k] += money / n;break;}}}}/*以上为输入,以下为输出*/for (int i = 1; i <= N; i++)printf("%s %d\n", name0[i], moy[i]);return 0;
}

注1:主要是理解题意,区分初始顺序和发钱顺序
注2:钱数非整除时会剩余

本人C语言菜鸟一枚,代码不当或可以改进的地方欢迎大家讨论交流。

北理工乐学68.恭喜发财 利是窦来相关推荐

  1. 68. 恭喜发财 利是窦来

    在中国,过春节时人们有给孩子压岁钱(粤语称为利是)的习俗. 最早的压岁钱出现于汉代,又叫压胜钱,并不在市面上流通,而是铸成钱币形式的玩赏物,有避邪的功能.钱币正面一般铸有"万岁千秋" ...

  2. 北理工乐学C语言 47. 【大学】北理工的恶龙

    背景:最近,北理工出现了一只恶龙,它长着很多 头,而且还会吐火,它将会把北理工烧成废墟, 于是,校长下令召集全校所有勇士杀死这只恶龙.要杀死这只龙,必须把它所有的头都砍掉,每个勇士只能砍一个龙头,龙的 ...

  3. [ACM]恭喜发财 利是窦来

    在中国,过春节时人们有给孩子压岁钱(粤语称为利是)的习俗. 最早的压岁钱出现于汉代,又叫压胜钱,并不在市面上流通,而是铸成钱币形式的玩赏物,有避邪的功能.钱币正面一般铸有"万岁千秋" ...

  4. 66. 【大学】恭喜发财 利是窦来

    在中国,过春节时人们有给孩子压岁钱(粤语称为利是)的习俗. 最早的压岁钱出现于汉代,又叫压胜钱,并不在市面上流通,而是铸成钱币形式的玩赏物,有避邪的功能.钱币正面一般铸有"万岁千秋" ...

  5. 【大学】恭喜发财 利是窦来

    在中国,过春节时人们有给孩子压岁钱(粤语称为利是)的习俗. 最早的压岁钱出现于汉代,又叫压胜钱,并不在市面上流通,而是铸成钱币形式的玩赏物,有避邪的功能.钱币正面一般铸有"万岁千秋" ...

  6. 北理工乐学 42. 五年级小学生的题目

    42. 五年级小学生的题目 成绩 5 开启时间 2022年10月24日 星期一 08:00 折扣 0.8 折扣时间 2022年11月13日 星期日 23:55 允许迟交 否 关闭时间 2022年11月 ...

  7. 北理工乐学C语言 60.合并排序

    60.合并排序 成绩 0 开启时间 2022年11月7日 星期一 08:00 折扣 0.8 折扣时间 2022年11月27日 星期日 23:35 允许迟交 否 关闭时间 2022年12月4日 星期日 ...

  8. 北理工乐学C语言 49.扫雷

    49. 扫雷 背景 你玩儿过扫雷游戏吧?有个操作系统中带了这个小游戏,那个系统叫什么来着?;-)在游戏中要想过关,就必须要在一个 NxM 的区域上找出所有的地雷.游戏过程中,计算机会在地图上显示一些数 ...

  9. 北理工乐学H:洗牌(选作)

    H:洗牌(选作) 成绩 5 开启时间 2022年11月21日 星期一 08:00 折扣 0.8 折扣时间 2022年12月31日 星期六 23:55 允许迟交 否 关闭时间 2022年12月31日 星 ...

最新文章

  1. 解决忘记oracle管理员密码(转)
  2. cordova报错:Could not find an installed version of Gradle either in Android Studio, or on your system
  3. think in java i o_《Thinking in Java》学习——18章Java I/O系统(三)
  4. “约见”面试官系列之常见面试题之第五十篇之title和alt的区别(建议收藏)
  5. 【转】盛大创新院许式伟:影响我一生的五个重要选择
  6. python epoll 写数据到数据库_Python--day40(EPOLL的使用、数据库基础)
  7. RePlugin 插件化方案学习
  8. 博科SAN交换机zone配置(华为SNS系列交换机为例OEM博科)
  9. Selenium WebDriver之JavaScript
  10. java 图像渲染_对具有大量图像的视图执行本机渲染性能
  11. Java基础知识强化之网络编程笔记22:Android网络通信之 Android常用OAuth登录(获取个人信息)...
  12. 可以替代basemap的几个工具
  13. ssh远程登录报错:WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED
  14. xcodebuild命令行打包发布ipa
  15. 常用chrome插件常用FireFox插件
  16. 返回固定页面的http服务器
  17. 基于SAP HANA 的SAP系统 安装
  18. VM ware 12安装教程
  19. arm rtx教程_【RTX操作系统教程】第5章 RTX操作系统库方式移植(超级...
  20. html5显示用户已读取文章,如何查看公众号文章是谁阅读

热门文章

  1. IT培训机构真的比在家自学好吗
  2. “祖尔谈软件”——过时的悲叹?
  3. 全局样式实现 页面 黑白色调——filter的使用——css基础
  4. 设计和实现回合制战斗系统Combat(C++)(Soldier战士类,Wizard巫师类,Master巫师类,WarSystem战斗系统类)
  5. 协方差矩阵的计算及意义
  6. 适用于 Linux 的 8 个最佳 CAD 应用程序
  7. ipad 计算机连接网络设置方法,ipad怎么通过联网的电脑上网,
  8. 实现基本任务对象Task(Python)
  9. APP开发失败的原因
  10. 《数据结构(信息管理)》