高中数学题。 超难。

高中数学题。 超难。,第1张

f(x)=(ax+b)/(1+x^2),根据奇偶性可得b=0,由后面的条件得a=1.

所以根据定义证明f(x)=x/(1+x^2)在定义域内为增函数

设-1<x1<x2<1

f(x1)-f(x2)=x1/(1+x1^2)-x2/(1+x2^2)=[ (x1-x2) (1-x1x2) ] / [ (1+x1^2) (1+x2^2) ]

因为-1<x1<x2<1,所以1+x1^2>0,1+x2^2>0,所以-1<x1x2<1,所以1-x1x2>0,x1-x2<0,所以f(x1)-f(x2)<0.所以f(x)在定义域内为增函数。

-1<t-1<1,-1<t<1,得0<t<1

f(t-1)+f(t)=(t-1)/(1+(t-1)^2)+t/(1+t^2)<0,通分知分子大于0,则分子小于0,即:-3t^2+3t-1<0,3t^2-3t+1>0,又因为deta<0,所以t取全体定义域内的数。即0<t<1

得0<t<1。

是化简错了,是相加不是相减。呵呵。我再算一下呀。

f(t-1)+f(t)=(t-1)/(1+(t-1)^2)+t/(1+t^2)<0

分子小于0,即:2t^3-3t^2+3t-1<0

2t^3-2t^2+2t-t^2+t-1<0

2t(t^2-t+1)-(t^2-t+1)<0

(t^2-t+1)(2t-1)<0,

因为t^2-t+1>0恒成立,所以2t-1<0,t<1/2,

又定义域为0<t<1,

所以0<t<1/2

用的是linux系统,所以聊天不方便,输入法也不方便。

前段时间从windows移植了一个程序到linux上,不知为何性能奇差。查了下原因,发现是由于一个函数ZeroSleep特别耗时,这个函数的代码很简单,如下:

void ZeroSleep()

{

Sleep(0)

}

Sleep(0)作用是用来释放cpu的时间片,避免忙等待。于是想当然的在linux上实现为:

void ZeroSleep()

{

msleep(0)

}

但其实msleep API的源代码如下:

void msleep(unsigned int msecs)

{

unsigned long timeout = msecs_to_jiffies(msecs) + 1

while (timeout)

timeout = schedule_timeout_uninterruptible(timeout)

}

如此一来,即使参数为0,也至少要睡眠一个jiffies单位的时间,因此导致严重的性能问题。

该问题的解决方法是:

既然ZeroSleep的目的是释放cpu资源,那么就可以通过调用schedule()函数替换msleep 。而且实际上msleep本身也是通过调用schedule_timeout_uninterruptible实现的,所以这个做法也是合理的。

http://tassardge.blog.163.com/blog/static/17230170820100275580656/


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7235684.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存