青少年编程知识记录 codecoming

编写第一个C++程序

前面的文章介绍了Dev-C++的下载安装:【入门篇】>>> DEVC++下载、安装、简单使用 - 青少年编程知识记录 (codecoming.com)今天讲一下如何使用Dev-C++如何编写第一个程序。第一步,新建空白程序文件:第二步,输入以下代码:#include<iostream> using namespace std; int main(){ cout<<"Hello World!&quo
作者:亿万年的星光 分类:C++知识 浏览:

【题解】解密

【题目描述】

给定一个正整数k,有k次询问,每次给定三个正整数ni,ei,di,求两个正整数pi,qi。

使ni=pi *  qi,  ei * di =(pi -1) *(qi-1) + 1

【输入描述】

第一行一个正整数k,表示有k次询问。

接下来k行,第i行三个正整数ni,di,ei。

【输出描述】

输出k行,每行两个正整数pi,qi表示答案。

为使输出统一,你应保证pi<=qi。

如果无解,请输出NO。

【样例输入】

10  770 77 5  633 1 211  545 1 499  683 3 227  858 3 257  723 37 13  572 26 11  867 17 17  829 3 263  528 4 109

【样例输出】

2 385  NO  NO  NO  11 78  3 241  2 286  NO  NO  6 88

【数据范围】

    m=n-e*d +2

    保证对于100的数据,1<=k<=10^5,对于任意的1<=i<=k,1<=ni<=10^18,

    1<=ei*di<=10^18,  1<=m<=10^9

标签: cspj2022

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

【算法】走迷宫

【题目描述】

一个迷宫由R行C列格子组成,有的格子里有障碍物,不能走;有的格子是空地,可以走。

给定一个迷宫,求从左上角走到右下角最少需要走多少步(数据保证一定能走到)。只能在水平方向或垂直方向走,不能斜着走。

【输入描述】

第一行是两个整数,R和C,代表迷宫的长和宽。( 1<= R,C <= 40)

接下来是R行,每行C个字符,代表整个迷宫。

空地格子用‘.’表示,有障碍物的格子用‘#’表示。

迷宫左上角和右下角都是‘.’。

【输出描述】

输出从左上角走到右下角至少要经过多少步(即至少要经过多少个空地格子)。计算步数要包括起点和终点。

【样例输入】

5 5  ..###  #....  #.#.#  #.#.#  #.#..

【样例输出】

9

标签: bfs

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

【算法】最短路径

【题目描述】

下图表示从城市A到城市H的交通图。从图中可以看出,从城市A到城市H要经过若干个城市。现在找出一条经过城市最少的一条路线。



【输入描述】

第一行一个整数n,表示几个城市。

接下来2~n+1行,表示两个城市之间的关系(能否直达)

【输出描述】

倒序输出城市最短线路中间用”-“隔开

【样例输入】

8  1 0 0 0 1 0 1 1   0 1 1 1 1 0 1 1   0 1 1 0 0 1 1 1   0 1 0 1 1 1 0 1  1 1 0 1 1 1 0 0   0 0 1 1 1 1 1 0  1 1 1 0 0 1 1 0  1 1 1 1 0 0 0 1

【样例输出】

H-F-A

标签: bfs

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

【算法】最少步数

【题目描述】

在各种棋中,棋子的走法总是一定的,如中国象棋中马走“日”。有一位小学生就想如果马能有两种走法将增加其趣味性,因此,他规定马既能按“日”走,也能如象一样走“田”字。他的同桌平时喜欢下围棋,知道这件事后觉得很有趣,就想试一试,在一个(100×100)的围棋盘上任选两点A、B,A点放上黑子,B点放上白子,代表两匹马。棋子可以按“日”字走,也可以按“田”字走,俩人一个走黑马,一个走白马。谁用最少的步数走到左上角坐标为(1,1)的点时,谁获胜。现在他请你帮忙,给你A、B两点的坐标,想知道两个位置到(1,1)点可能的最少步数。

【输入描述】

A、B两点的坐标。

【输出描述】

最少步数

【样例输入】

12 16  18 10

【样例输出】

8  9

标签: dfsbfs

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

【NOIP2000】计算器的改良

【题目描述】

NCL 是一家专门从事计算器改良与升级的实验室,最近该实验室收到了某公司所委托的一个任务:需要在该公司某型号的计算器上加上解一元一次方程的功能。实验室将这个任务交给了一个刚进入的新手 ZL 先生。

为了很好的完成这个任务,ZL 先生首先研究了一些一元一次方程的实例:

4+3x=8  6a-5+1=2-2a  -5+12y=0

ZL先生被主管告之,在计算器上键入的一个一元一次方程中,只包含整数、小写字母及+、-、=这三个数字符号(当然,符号“-”既可以作减号,也可以做负号)。方程中并没有括号,也没有除号,方程中的字母表示未知数。

你可假设对键入的方程的正确性的判断是由另一个程序员在做,或者说可认为键入的一元一次方程均为合法的,且有唯一实数解。

【输入描述】

一个一元一次方程。

【输出描述】

解方程的结果(精确到小数点后三位)。

【样例输入】

6a-5+1=2-2a

【样例输出】

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

CSPJ2022 乘方

【题目描述】小文同学刚刚接触了信息学竞赛,有一天她遇到了这样一个题:给定正整数a和b,求ab的值是多少。ab即 b 个a相乘的值,例如23 即为3个2相乘,结果为2×2×2=8。“简单!”小文心想,同时很快就写出了一份程序,可是测试时却出现了错误。小文很快意识到,她的程序里的变量都是int类型的。在大多数机器上,int类型能表示的最大数为231−1,因此只要计算结果超过这个数,她的程序就会出现错误。由于小文刚刚学会编程,她担心使用int计算会出现问题。因此她希望你在ab的值超过109&
作者:亿万年的星光 分类:题解目录 浏览:

【循环】日记第几天

【题目描述】

小明每天都坚持写日记,突然有一天小明在想,我今年写了多少篇日记了?一篇一篇的数好麻烦,没办法小明只能把这个艰难的问题交给聪明的你来解决。

【输入描述】

输入三个整数y,m,d分别表示年月日,数据均在int范围内。

【输出描述】

输出一个整数,表示这是今年的第几天。

【样例输入】

2018 1 1

【样例输出】

1

【题解】完全背包问题

【题目描述】

设有n种物品,每种物品有一个重量及一个价值。但每种物品的数量是无限的,同时有一个背包,最大载重量为M,今从n种物品中选取若干件(同一种物品可以多次选取),使其重量的和小于等于M,而价值的和为最大。

【输入描述】

第一行:两个整数,MM(背包容量,M≤200)和NN(物品数量,N≤30N≤30);

第2…N+1行:每行二个整数Wi,Ci,表示每个物品的重量和价值。

【输出描述】

仅一行,一个数,表示最大总价值。

【样例输入】

10 4   2 1   3 3  4 5   7 9

【样例输出】

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