青少年编程知识记录 codecoming

【题解】均分蛋糕

【题目描述】



小明今天生日,他有n块蛋糕要分给朋友们吃,这n块蛋糕(编号为1到n)的重量分别为a1, a2, …, an。小明想分给每个朋友至少重量为k的蛋糕。小明的朋友们已经排好队准备领蛋糕,对于每个朋友,小明总是先将自己手中编号最小的蛋糕分给他,当这个朋友所分得蛋糕的重量不到k时,再继续将剩下的蛋糕中编号最小的给他,直到小明的蛋糕分完或者这个朋友分到的蛋糕的总重量大于等于k。

  请问当小明的蛋糕分完时,总共有多少个朋友分到了蛋糕。

【输入描述】

输入的第一行包含了两个整数n, k,意义如上所述。

  第二行包含n个正整数,依次表示a1, a2, …, an。

【输出描述】

 输出一个整数,表示有多少个朋友分到了蛋糕。

【样例输入】

6 9  2 6 5 6 3 5

【样例输出】

3

【样例说明】

第一个朋友分到了前3块蛋糕,第二个朋友分到了第4、5块蛋糕,第三个朋友分到了最后一块蛋糕。

【数据范围】

对于所有测评用例,1<=n<=1000, 1<=k<=10000, 1<=ai<=1000。

作者:亿万年的星光 分类:题解目录 浏览:

【题解】01串

【题目描述】

Fans是个ACM程序设计迷。有时侯,他表现出很强烈的逆反心理,你往东,他往西,你往南,他偏往北。这一次,不知道又是谁惹着他了,好端端的一个个01串,到了他的手里,都变成10串了。请你编个程序来模仿他的行为,将01串(长度≤200),全变成10串吧。

【输入描述】

0110100100100 1000000010000000000

【输出描述】

1001011011011 0111111101111111111

【样例输入】

0110100100100  1000000010000000000

【样例输出】

1001011011011  0111111101111111111
作者:亿万年的星光 分类:题解目录 浏览:

【C++图形化编程】播放背景音乐

再做小游戏的时候有的时候需要背景音乐,这一点EasyX也可以实现。需要的头文件#include <mmsystem.h>  //多媒体设备接口 #pragma comment(lib,"winmm.lib") //加载静态库调用函数mciSendString(); mciSendStringW(      LPCWSTR lpstrCommand,/
作者:亿万年的星光 分类:趣味小程序 浏览:

【题解】车辆管理

【题目描述】

交通管理局长氓氓现在需要一个管理汽车的系统,每一辆汽车都有许多信息需要去记录。 首先,每一辆汽车都有一个独一无二的车牌号 S,车牌号由 7 个字符组成。 然后,对于每一辆车要记录它的排量 V 和载重 W,是两个不大于 100 的正整数。 接着,记录车主人的信息,有两种方式(每一辆车只选一种):记录车主的名字(不超过 20 位的字符串),或者记 录车主的家庭电话号码(8 位数字,无前导零)。 最后,按照记录的顺序,每一辆车有一个唯一的编号 id,从 1 开始。 在输入所有车的信息之后,会有多次询问。 每一次询问为以下 3 种中的一种: 

1、查询车牌。读入车的编号,查询车牌号并输出。 

2、查询车主信息。读入车牌号,查询车主人的信息并输出。如果是名字则输出名字,否则输出电话号码。 

3、查询排量与载重之比(V/W)大于等于某一个正整数 k 的车有多少辆。读入 k,输出有多少辆。 现在这个任务交给你来完成。

【输入描述】

第 1 行:一个整数 n(1<=n<=100),表示汽车的总数。

第 2~n+1 行:每一行格式如下: S V W typ name/phone 其中 S 表示车牌号,V、W 表示排量和载重,typ=0 或 1,其中 typ=0 表示记录的车主信息是名字,typ=1 表示记 录的车主信息是电话号码,最后输入名字或者电话号码。 第 n+2 行:一个整数 Q(1<=Q<=100),表示询问的个数。 

第 n+3~n+Q+2 行: 每行第一个数字 op 表示询问的种类。 op=1 时,接下来读入车的编号 id。 op=2 时,接下来读入车牌号 S。 op=3 时,接下来读入一个正整数 k。

【输出描述】

对于每一个询问输出一行。 op=1 时,输出车牌号。 op=2 时,输出车主人的信息。 op=3 时,输出一个数表示有多少辆车的排量与载重之比大于 k。

【样例输入】

5  NH12345 3 1 0 OIer  BJ54321 5 2 1 87654321  GD18323 2 3 0 Dreamer  GD22121 4 3 0 ACer  NH99999 10 3 1 12345678  5  1 3  2 GD22121  3 3  1 5  2 BJ54321

【样例输出】

GD18323  ACer  2  NH99999  87654321

【数据范围】

作者:亿万年的星光 分类:题解目录 浏览:

【题解】画百钱买百鸡

【题目描述】鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡。问鸡翁、鸡母、鸡雏各几何?#include<iostream> using namespace std; int x,y,z;  int main(){ for(x=0;x<100/5;x++) for(y=0;y<=100/3;y++)   for(z=0;z<=3*100;z++) &nbs
作者:亿万年的星光 分类:题解目录 浏览:

【题解】人民币问题

【题目描述】

给出任意的人民币(>10 元)的整币兑换成 5 元、2 元和 1 元币值(要求三种币值均有)的方法有多少种。

【输入描述】

输入任意的人民币(>10 元)的整币 100,50,20,10

【输出描述】

计算出兑换成 5 元、2 元和 1 元币值(要求三种币值均有)的方法有多少种

【样例输入】

50

【样例输出】

106

【数据范围】



标签: for模拟

作者:亿万年的星光 分类:题解目录 浏览:

【题解】公式成绩

【题目描述】

学校的期中考试到了。 gp 老师一共收集到 n 个学生的成绩,每个学生有 5 科成绩,分别是语文、数学、英语、政治、历史。(ai,bi,ci,di,ei) gp 老师突发奇想,他用 m 条公式来评价学生的成绩,也就是说,每条公式都单独评价一个指定的学生。 公式的形式为 Mark=kj1*ai+kj2*bi+kj3*ci+kj4*di+kj5*ei 现在 gp 老师懒得计算,他把这个任务交给了你,请你按照数据给出的 m 条公式,分别计算出 m 个指定的学生 对应的分数(mark)值。

【输入描述】

第 1 行为 n,m。 

第 2~ n+1 行,每行有五个正整数 ai,bi,ci,di,ei,分别为五科成绩 

第 n+2 ~n+1+m 行,每行有六个整数 ki1,ki2,ki3,ki4,ki5,pi,分别为公式的系数和第 pi 个学生

【输出描述】

一行 m 个数,分别为 m 条公式对应学生的分数值

【样例输入】

3 2  1 2 3 4 5  5 8 2 1 3  4 2 9 3 5  3 2 1 0 5 2  1 2 3 4 5 1

【样例输出】

48 55

【数据范围】

n<=1000 ai,bi,ci,di,ei<=1000 -1000<=ki<=1000  保证所有数据都是整数
作者:亿万年的星光 分类:题解目录 浏览:

【题解】奇偶校验

【题目描述】

奇偶校验(Parity Check)是一种校验代码传输正确性的方法。根据被传输的一组二进制代码的数位中“1”的个数 是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。现在给定 n 组二进制数据,判断每组是什 么校验方式。

【输出描述】

第一行 n,表示有 n 组数据。后面跟着 n 行,每行是一组二进制数据。

【输出描述】

n,输出对应的是什么校验方式。

【样例输入】

3  1010101  01000100  1

【样例输出】

偶校验  偶校验  奇校验

【数据范围】

作者:亿万年的星光 分类:题解目录 浏览:

分离整数的各个位

        平常做题的时候有很多时候会遇到分离整数的各个位的操作,比如求回文数,数字反转等题目。今天简单总结一下分离整数的一些做法。一、数字的分离(倒序)        一般题目中,涉及数字的分离操作,比如将一个数字单独拆开,分别展示其每一位上的数字,我们一般可以像下面这样操作。#include<iostream> us
作者:亿万年的星光 分类:C++知识 浏览:

【C++图形化编程】使用键盘做一个简单画板

参考代码#include <graphics.h> // 引用图形库头文件 #include<cstdio> #include<conio.h> int main(){ initgraph(640, 480); // 创建绘图窗口,大小为 640x480 像素,并显示控制台 int x=100,y=100; //起始位置 while(
作者:亿万年的星光 分类:趣味小程序 浏览: