1432: [ZJOI2009]Function
Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 1285 Solved: 951
[ Submit][ Status][ Discuss]
Description
![](http://www.lydsy.com/JudgeOnline/images/1432.jpg)
Input
一行两个整数n; k。
Output
一行一个整数,表示n 个函数第k 层最少能由多少段组成。
Sample Input
1 1
Sample Output
1
题目的意思就是n条直线,没有任意三条及以上直线相交于同一点
画图找规律
当k<=n/2时,答案就是2*k,当k>n/2时,答案就是2*(n-k+1)(上下对称,注意特判n==1)
#include<stdio.h>
#include<algorithm>
using namespace std;
int main(void)
{
int n, k;
while(scanf("%d%d", &n, &k)!=EOF)
{
if(n==1)
printf("1\n");
else
{
if(k>n/2)
k = n-k+1;
printf("%d\n", k*2);
}
}
return 0;
}