Gerald 有n个弟弟,并且他们的人数是偶数。一天,他买了n的二次方袋糖(比如2个弟弟,买了4袋糖),一个袋子有一颗糖,一个袋子有两颗糖,一个袋子有三颗糖,以此类推。事实上,对每一个从1到n的平方间(比如本例中的1到4)的整数k,他都有一个装有k颗糖果的袋子。

帮助他把n平方个袋子分给每一个弟弟使得所有弟弟得到相同数量的糖果。
输入
仅有一行,包括一个整数n,(n是偶数,2 ≤ n ≤ 100)——Gerald的弟弟的人数。
输出
假设Gerald对他的弟弟们从1到n的标号建了索引。你需要打印n行,在第i行打印n个整数——给第i个弟弟糖果袋的糖果数量。当然所有这些数字都应该是不同的,并且限制在1到n平方之间。你可以用任意的顺序打印这些行的数字。
要保证在给定限制下有解。
输入
2
输出
1 4
2 3
注意
测试用例是当Gerald有两个弟弟时他的分配结果。在这个例子中,他的糖果袋包括1,2,3和4颗糖果。他把装有1颗和4颗糖果的袋子给一个弟弟,把装有2颗和3颗的袋子给另一个弟弟。
输入输出样例:1组
#1
样例输入:
2
样例输出:
1 4
2 3


分析:有n个弟弟,有n*n个袋子,每个袋子的糖果数为1 2 3 …… …… n *n。 全部糖果要平均分给n个弟弟,且每个弟弟拿的袋子数为n。
所以拿了第一个的一个糖果的袋子的弟弟,就必须拿第n *n。
因此,定义两个变量 i k。 i从第一个袋子往后取,k从第n *n个袋子往前取。并且 i 只要取够n/2个,即,按照上面所讲的整体取够n个 就可以完成一个平分。

int n,i,k,num;
scanf("%d",&n);
num=n*n;
for(i=1,k=num;i<k;i++,k--){printf("%d %d",i,k);
}

接下来就是要按照要求格式 输出结果
每一次取两个数,两个数之间和每两个数之间也要空格,一行代表一个弟弟取的糖果,即只需要取n个数,即i=n/2时,就取完一个弟弟的。
所以还要加入一个变量count 每取一次数字加一,当count等于n/2时换行且重置count的值。当count的值小于n/2时,输出空格 隔开每两个数。


代码实现

#include <stdio.h>
#include <stdlib.h>int main()
{int n,i,num,count=0,j=0,k;scanf("%d",&n);num=n*n;for(i=1,k=num;i<k;i++,k--){printf("%d %d",i,k);count++;if(count>=(n/2)){count=0;printf("\n");}else{printf(" ");}}return 0;
}

以上为一个刚学C语言不久的小白所做的作业,如有不足请各位大牛多多包容

Candy Bags / 糖果袋(整数算法问题)相关推荐

  1. 【算法】Candy 分发糖果

    文章目录 Candy 分发糖果 问题描述: 分析 代码 Candy 分发糖果 问题描述: n 个孩子站成一排.给你一个整数数组 ratings 表示每个孩子的评分. 你需要按照以下要求,给这些孩子分发 ...

  2. 大整数算法[09] Comba乘法(原理)

    ★ 引子          原本打算一篇文章讲完,后来发现篇幅会很大,所以拆成两部分,先讲原理,再讲实现.实现的话相对复杂,要用到内联汇编,要考虑不同平台等等. 在大整数计算中,乘法是非常重要的,因为 ...

  3. LeetCode135. 分发糖果(贪心算法)

    1 题目描述 n 个孩子站成一排.给你一个整数数组 ratings 表示每个孩子的评分. 你需要按照以下要求,给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果. 相邻两个孩子评分更高的孩子会获得更 ...

  4. LeetCode算法题0:分发糖果【贪心算法】

    文章目录 前言 一.题目 二.思路详解 三.搞点实际点儿的(C++实现) 1.略显粗糙的代码实现 2.稍显精致的代码实现 3.最终的代码实现 4.提交结果 总结 前言 本文记录自己在LeetCode上 ...

  5. LeetCode—Candy(分糖果)—java

    题目描述: There are N children standing in a line. Each child is assigned a rating value. You are giving ...

  6. 135. 分发糖果(贪心算法)

    老师想给孩子们分发糖果,有 N 个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分. 你需要按照以下要求,帮助老师给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果. 评分更高的孩子必须 ...

  7. Java描述 LeetCode,135. Candy 分发糖果

    大家好,我是河海哥,专注于后端,如果可以的话,想做一名code designer而不是普通的coder,一起见证河海哥的成长,您的评论与赞是我的最大动力,如有错误还请不吝赐教,万分感谢.一起支持原创吧 ...

  8. 手把手教你领candy.one糖果

    李笑来老师发了一条朋友圈激起千层浪: "不知道干嘛的",那不是相当于什么都没说?但是由于李笑来老师强大的影响力,大家纷纷开始关注这个candy.one了. 简单来说:就是有人(ca ...

  9. 程序员面试题精选100题(17)-把字符串转换成整数[算法]

    题目:输入一个表示整数的字符串,把该字符串转换成整数并输出.例如输入字符串"345",则输出整数345. 分析:这道题尽管不是很难,学过C/C++语言一般都能实现基本功能,但不同程 ...

最新文章

  1. WifiP2pSettings工作流程
  2. 共识算法的比较:Casper vs Tendermint
  3. CV:基于face库利用cv2调用摄像头(或视频)根据人脸图片实现找人(先指定要识别已知人脸的文件夹转为numpy_array+输入新图片遍历已有numpy_array)
  4. dao模式和前端控制器结合使用_前端技术及开发模式的演进,带你了解前端技术的前世今生...
  5. 帝国php.ini路径,帝国CMS数据库配置文件是哪个文件?
  6. 牛客小白月赛12 J 月月查华华的手机 (序列自动机模板题)
  7. codeforces1451 E. Bitwise Queries(位运算妙用)
  8. 天池客流预测–GBDT
  9. 10月8日提交的结对编程工程中的经验和教训
  10. xu2w显示屏软件下载_LED显示屏控制软件
  11. java se官网_Java下载|Java SE Development Kit官方下载-太平洋下载中心
  12. SD敢达服务器源码,《sd高达wars》金手指代码 SD高达G世纪WARS金手指
  13. 申报深圳市专精特新中小企业需要哪些条件,及有什么好处
  14. python 通信中间件_python 终极篇 ---- 中间件
  15. 京东被优衣库打脸,阿里:怪我咯?
  16. python表白女神
  17. 利用4G CAT1开发板制作短信网关(一)
  18. 系统安装-SSD装win8.1操作指南(win7相同,内含win8、win7的iso镜像文件下载地址)
  19. 一起来看流星雨剧情简介/剧情介绍/剧情分集介绍第四集
  20. Aurix Tricore TC397定义变量至LMU程序异常的解决办法

热门文章

  1. 用计算机弹卡农数字谱,卡农电脑钢琴曲谱_卡农电脑键盘钢琴谱
  2. ruoyi修改mybatis为mybatis-plus
  3. Developer Distribution Agreement
  4. 用最简单的方法腌制最美味酸豆角——酸豆角的腌制方法
  5. 基于51单片机太阳能风能太阳能风光互补路灯proteus仿真原理图PCB
  6. 对四大杀毒软件的评价(卡巴、麦咖啡、诺顿、nod32)
  7. 苹果已经关闭5.1.1的验证,如何升级到iOS5.1.1或平刷5.1.1
  8. 如何正确的给CPU涂硅胶
  9. 未来不迎,现时不杂,过往不恋
  10. PostgreSQL实现递归查询