Halo

A magic place for coding

0%

窗口问题

问题描述

 在某图形操作系统中,有 N 个窗口,每个窗口都是一个两边与坐标轴分别平行的矩形区域。窗口的边界上的点也属于该窗口。窗口之间有层次的区别,在多于一个窗口重叠的区域里,只会显示位于顶层的窗口里的内容。
 当你点击屏幕上一个点的时候,你就选择了处于被点击位置的最顶层窗口,并且这个窗口就会被移到所有窗口的最顶层,而剩余的窗口的层次顺序不变。如果你点击的位置不属于任何窗口,则系统会忽略你这次点击。
 现在我们希望你写一个程序模拟点击窗口的过程。

Read more »

前言

 在数值计算课程中学到了高斯消元法的详细算法过程,自己就用C++和matlab实现了一下。首先我会讲解算法的推导过程,然后我将会把代码分块讲解,想直接看完整代码的可以直接到最后看。

Read more »

ISBN号码问题

问题描述

 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符“-”之后的三位数字代表出版社,例如670代表维京出版社;第二个分隔之后的五位数字代表该书在出版社的编号;最后一位为识别码。
 识别码的计算方法如下:
 首位数字乘以1加上次位数字乘以2……以此类推,用所得的结果mod 11,所得的余数即为识别码,如果余数为10,则识别码为大写字母X。例如ISBN号码0-670-82162-4中的识别码4是这样得到的:对067082162这9个数字,从左至右,分别乘以1,2,…,9,再求和,即0×1+6×2+……+2×9=158,然后取158 mod 11的结果4作为识别码。
 编写程序判断输入的ISBN号码中识别码是否正确,如果正确,则仅输出“Right”;如果错误,则输出是正确的ISBN号码。

Read more »

消除类游戏问题

问题描述

 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消除。当有多处可以被消除时,这些地方的棋子将同时被消除。
 现在给你一个n行m列的棋盘,棋盘中的每一个方格上有一个棋子,请给出经过一次消除后的棋盘。
 请注意:一个棋子可能在某一行和某一列同时被消除。

Read more »

俄罗斯方块问题

问题描述

 俄罗斯方块是俄罗斯人阿列克谢·帕基特诺夫发明的一款休闲游戏。
 游戏在一个15行10列的方格图上进行,方格图上的每一个格子可能已经放置了方块,或者没有放置方块。每一轮,都会有一个新的由4个小方块组成的板块从方格图的上方落下,玩家可以操作板块左右移动放到合适的位置,当板块中某一个方块的下边缘与方格图上的方块上边缘重合或者达到下边界时,板块不再移动,如果此时方格图的某一行全放满了方块,则该行被消除并得分。
 在这个问题中,你需要写一个程序来模拟板块下落,你不需要处理玩家的操作,也不需要处理消行和得分。
 具体的,给定一个初始的方格图,以及一个板块的形状和它下落的初始位置,你要给出最终的方格图。

Read more »

前言

 我们把hexo博客托管在github的仓库中,但是仓库中只会托管一些静态网页文件,但是文章的源码和一些很关键的站点配置文件并没有被托管,因此,在进行备份和恢复上就存在很大麻烦。在这篇post中,我们就来解决这个问题。

Read more »

 在初学java的时候,我们总是比较关心一个程序如何从命令行读取输出,如何输出数据。在这篇post,我就来给大家讲解一下关于java的一些常用输入输出操作。

Read more »