1640 集合取数
时间限制:1000MS 内存限制:65536K
总提交数:61 通过数:36
描述
求集合的前N个元素:编一个程序,按递增次序生成集合M的最小的N个数,M的定义如下:
(1)数1属于M;
(2)如果X属于M,则Y=2*X+1和Z=3*X+1也属于M;
(3)此外再没有别的数属于M。
输入
一行,n (n≤100)
输出
一行,递增次序输出集合M的最小的N个数
输入样例
3
输出样例
1 3 4
拜托,我问的是PASCAL语言……
参考资料:http://zlzhb.blog.163.com/blog/static/1860914920072180199146/
Free Pascal 求解
观察题意可以得知,如果第i位和第j位同色,那么就一定能够组成一个三元组,并且三元组的价值完全与中间那个数无关。那么,我们就用一个数组存储同奇偶性的同色方块。那么价值就是(num i+num j)*(i+j)现在把每组的数的下标用a1~an表示,数值用numa1~numan表示。答案就是(numa1+numa2)*(a1+...
free pascal的编程拜托了
var i,j,k:integer;begin for i:=0 to 8 do begin for j:=1 to abs(4-i) do write(' ');for k:=1 to 2*(5-abs(4-i))-1 do write(i div 2);for j:=1 to abs(4-i) do write(' ');writeln;end;readln;end.var i,j,k:integer;begin for i:=1 to 9 do begin...
free pascal编程问题
2.在函数中,函数的返回值可以作为一个变量来处理。比如:function a : longint;begin a:=12;while a>4 do begin {...} end;end;这个例子在Turbo Pascal中,a>4会被认为是函数的递归调用,但是在Free Pascal中会认为a只是一个变量。如果想在Free Pascal中实现递归调用,就要写成下面的形式:fu...
一个超级难的free pascal循环问题
用F[I]表示上到第I级台阶时的方法数 因为F[I]只能由F[I-1],F[I-2],F[I-3]三种状态到达,所以递推式 F[I]=F[I-1]+F[I-2]+F[I-3]Var F:Array[0..10]of Longint;I:Longint;Begin F[0]:=1;F[1]:=1;F[2]:=2;For I:=3 to 10 do F[I]:=F[I-1]+F[I-2]...
关于Free Pascal编程的几个问题。
按alt+F9是编译,按了如果有错会出现如图的界面,会告诉你坐标,说的很清楚了。如果对的话就会提示"press any key";如果你是直接保存,那就在你安装的那个地方,比如说我的装在D:\\FPC里,那文件就在D:\\FPC\\2.4.0\\bin\\i386-win32\\文件夹里面。(扩展名为.pas)...
如何利用free PASCAL正确编写程序
我们以下的示范,是以时下比较流行的Borland Pascal 7.0为例子,其他的编程环境可能略有不同,但大致上是一致的。我们先编一个比较简单的程序,看看程序是如何调试的。program tiaoshi;var i:integer;begin for i:=1 to 300 do begin if i mod 2 = 0 then if i mod 3 = 0 then if i mo...
关于Free Pascal 编程问题
大体思路都是:readln(n);for i:=1 to n do begin ……for j:=1 to … do ……end;关键是如何弄出“……”部分。如:1)图应该是如下:每行的星星数与行号数相同所以就是 for i:=1 to n do begin for j:=1 to i do write('*');writeln;{每做完一行要换行} end;{核心内容就...
求Free Pascal IDE的一个简单程序代码
Begin If NOT ((a MOD b = 0) OR (b MOD a = 0)) Then Continue;{ 两数不能整除就继续下一循环 } he := a + b; { 和 } cha := Abs(a - b); { 差。Abs 求绝对值 } ji := a * b; { 积 } If a > b { 商 } Then shang := a DIV b Else sha...
Free Pascal问题,用函数和过程解。谢谢!
if a>b then tmp:=a;a:=b;b:=tmp;if a>c then tmp:=a;a:=c;c:=tmp;if b>c then tmp:=b;b:=c;c:=tmp;s:=c;end;begin readln(a,b,c);max(a,b,c,s);writeln(s);end.其他的问题我临时没有时间 如果你不急的话 我会在 这周五晚上完整回答 我是个学生。其实...
free pascal编程,帮忙解释一下,假如能提示更简便的方法就给三十分...
第二个:x代表:代表它模拟的这个平方数 第三个:因为99的平方式9801,不到9999,所以是1 to 8 第四个:if语句:这个if语句的判断条件1111*j,因为这个新产生的四位相同数数比模拟的平方数小就做 第五个:if语句:这是判断模拟的平方数减去四位相同数后是否还是一个完全平方数(sqr函数是求平方...