首页 > 其他 > 详细

1432: [ZJOI2009]Function

时间:2019-03-12 20:31:24      阅读:132      评论:0      收藏:0      [点我收藏+]
Time Limit: 5 Sec  Memory Limit: 64 MB
Submit: 1606  Solved: 1193
[Submit][Status][Discuss]

Description

有n个连续函数fi(x),其中1≤i≤n。对于任何两个函数fi(x)和fj(x),(i!=j),恰好存在一个x使得fi(x)=fj(x),
并且存在无穷多的x使得fi(x)<fj(x)。对于任何i;j;k,满足1≤i<j<k≤n,则不存在x使得fi(x)=fj(x)=fk(x)。
技术分享图片
如上左图就是3个满足条件的函数,最左边从下往上依次为f1;f2;f3。右图中红色部分是这整个函数图像的最低层
,我们称它为第一层。同理绿色部分称为第二层,蓝色部分称为第三层。注意到,右图中第一层左边一段属于f1,
中间属于f2,最后属于f3。而第二层左边属于f2,接下来一段属于f1,再接下来一段属于f3,最后属于f2。因此,
我们称第一层分为了三段,第二层分为了四段。同理第三层只分为了两段。求满足前面条件的n个函数,第k层最少
能由多少段组成。

Input

一行两个整数n; k。1 ≤ k ≤ n ≤ 100。

Output

一行一个整数,表示n 个函数第k 层最少能由多少段组成。

Sample Input

1 1

Sample Output

1
 
传说中的代码五分钟,看题一小时
强画了5个函数的情况,发现(瞎猜)规律2,4,6,8...
 1 #include<iostream>
 2 #include<cstdio>
 3 using namespace std;
 4 
 5 int n,k;
 6 
 7 int main()
 8 {
 9     scanf("%d%d",&n,&k);
10     if(n==1) printf("1");
11     else printf("%d",min(k,n-k+1)*2);
12     return 0;
13 }

 

1432: [ZJOI2009]Function

原文:https://www.cnblogs.com/InWILL/p/10519411.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!