ACM二招补题系列Day1 ||M_切多边形

M_切多边形

(还有代码随想录的题没有写呢😭,昨天就考个四级然后玩了一天,结果就断崖式掉进度了😭)

M_切多边形

据学长题解中说,这是一道简答题😶(我画图画了几个小时呢==)

思路

找规律,自己画😭

来看我画的(其实还挺好玩)

八边形8_2 八边形8_3

九边形9_2 九边形9_3

画完就发现,

1,切割几边形,最后中间就会出现一个几边形

2,每隔k-1个点连接一条线,那么画完后,就会在中心正n边形的周围出现k层形状,而且每一层都是n

3,以上规律不适用于连接正对面的两个点,(即2*k==n) 比如下面这个样子,此时如果是n边形就是n个小方块

alt

总结规律:数量amount=nk+1(2k!=n)或者amount=n(2*k==n)

#include<stdio.h>
typedef long long int i64;
int main(void)
{
	i64 n,k;
	scanf("%ld %ld",&n,&k);
	i64 ans=0;
	if(k*2==n)
	{
		ans=n;
	}
	else
	{
		int min;
		if(k>n-k)
		{
			min=n-k;
		}
		else
		{
			min=k;
		}
		ans=n*min+1;
	}
	printf("%ld\n",ans);
	return 0;
 }  
全部评论

相关推荐

不愿透露姓名的神秘牛友
12-11 09:18
潍柴 软开 24w 硕士211
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务