pascal三角形问题
Description输入绳子的长度n,将该绳子分成三段,每段长度为正整数,输出由该三段绳子组成的三角形个数。Input只有一行且只有一个正整数:n(1<n<32000)...
Description
输入绳子的长度n,将该绳子分成三段,每段长度为正整数,输出由该三段绳子组成的三角形个数。
Input
只有一行且只有一个正整数:n
( 1 < n < 32000 )Output只有一行且只有一个正整数:可以构成的三角形个数Sample Input
7
Sample Output
2
应该用递推(不然会超时),可是找不到规律。 展开
输入绳子的长度n,将该绳子分成三段,每段长度为正整数,输出由该三段绳子组成的三角形个数。
Input
只有一行且只有一个正整数:n
( 1 < n < 32000 )Output只有一行且只有一个正整数:可以构成的三角形个数Sample Input
7
Sample Output
2
应该用递推(不然会超时),可是找不到规律。 展开
展开全部
用宽搜效率会高过递归
追问
是递推
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
武义菲亚伏电子有限公司
2023-06-12 广告
2023-06-12 广告
绝缘子控件是指:“一种能够在架空输电线路中起到重要作用的特殊绝缘控件,能够在架空输电线路中起到重要作用。”绝缘子的作用是支持和固定母线与带电导体,并使带电导体间或导体与大地之间有足够的距离和绝缘。绝缘子应具有足够的电气绝缘强度和耐潮湿性能。...
点击进入详情页
本回答由武义菲亚伏电子有限公司提供
展开全部
宽搜
追问
给出源程序代码
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
枚举a取值1..n/3,b为(n-a)/2 ,c为n-a-b
列不等式b-x>=a b-x+a>=c+x x>=1解出x答案就加上x
var
i,n,a,b,c,ans,d:longint;
function min(a,b:longint):longint;
begin
if a>b then exit(b) else exit(a);
end;
begin
read(n);
for i:=1 to n div 3 do
begin
a:=i;b:=(n-a) div 2;c:=n-b-a;
if(a+b<=c)then continue;
d:=min((b+a-c) div 2-ord((b+a-c) mod 2=0),b-a);
inc(ans,d+1);
end;
write(ans);
end.
列不等式b-x>=a b-x+a>=c+x x>=1解出x答案就加上x
var
i,n,a,b,c,ans,d:longint;
function min(a,b:longint):longint;
begin
if a>b then exit(b) else exit(a);
end;
begin
read(n);
for i:=1 to n div 3 do
begin
a:=i;b:=(n-a) div 2;c:=n-b-a;
if(a+b<=c)then continue;
d:=min((b+a-c) div 2-ord((b+a-c) mod 2=0),b-a);
inc(ans,d+1);
end;
write(ans);
end.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询