背景 Background 基础练习题
描述 Description 一间冰淇淋商店刚刚开张,外面有2*N个人购买1元的冰淇淋,其中一半人拿着1张2元人民币,另一半人拿一张1元人民币。售货员很粗心,没有准备零钱,要使出售过程中不发生找钱困难的问题,这2*N个人应该如何排队?请你帮售货员找出所有方案数量的总和。输入格式 Input Format 一个整数N(n<=15)
输出格式 Output Format 方案总数M样例输入 Sample Input 4样例输出 Sample Output 14时间限制 Time Limitation 各个测试点1s
pascal 基础练习题 描述 Description 一间冰淇淋商店刚刚开张,外面有2*N个人购买1元的冰淇淋,
答案:2 悬赏:20 手机版
解决时间 2021-03-02 05:42
- 提问者网友:不爱我么
- 2021-03-01 16:14
最佳答案
- 五星知识达人网友:冷風如刀
- 2021-03-01 17:23
var
a:array[1..40] of longint;
x:int64;
n,i,j,k:longint;
begin
readln(n);
fillchar(a,sizeof(a),0);
x:=1;
for i:=n+2 to n*2 do
begin
j:=i;
for k:=2 to i do
while j mod k=0 do
begin
inc(a[k]);
j:=j div k;
end;
end;
for i:=2 to n do
begin
j:=i;
for k:=2 to i do
while j mod k=0 do
begin
dec(a[k]);
j:=j div k;
end;
end;
for i:=1 to 40 do
for j:=1 to a[i] do
x:=x*int64(i);
writeln(x);
end.
a:array[1..40] of longint;
x:int64;
n,i,j,k:longint;
begin
readln(n);
fillchar(a,sizeof(a),0);
x:=1;
for i:=n+2 to n*2 do
begin
j:=i;
for k:=2 to i do
while j mod k=0 do
begin
inc(a[k]);
j:=j div k;
end;
end;
for i:=2 to n do
begin
j:=i;
for k:=2 to i do
while j mod k=0 do
begin
dec(a[k]);
j:=j div k;
end;
end;
for i:=1 to 40 do
for j:=1 to a[i] do
x:=x*int64(i);
writeln(x);
end.
全部回答
- 1楼网友:像个废品
- 2021-03-01 18:46
搜一下:pascal 基础练习题 描述 Description 一间冰淇淋商店刚刚开张,外面有2*N个人购买1元的冰淇淋,
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯