给学弟们出的题

为了比较美观,用html进行编辑。

<html>
<head>
    <style>
        .grid{
            background-color: brown;
        }
        .tree{
            background-color: green;
        }
    </style>
</head>
<ol>
    <li>一道求导数题<br>
        给定形如f(x)=k&times;sin(x)<sup>m</sup>&times;cos(x)<sup>n</sup>的一个函数,求f(x)的十次导数.这里面k,m,n是三个浮点数.
        <br> 输入:三个数字k,m,n.
        <br> 输出:f(x)的十次导数.
        <br>说清思路.
        <hr>
        答案:f(x)的导数包含两项:k&times;m&times;sin(x)<sup>(m-1)</sup>&times;cos(x)<sup>(n+1)</sup>+k&times;n&times;sin(x)<sup>(m+1)</sup>&times;cos(x)<sup>(n-1)</sup>.<br>表示为(k*m,m-1,n+1)+(k*n,m+1,n-1).<br>
        一个(k,m,n)会裂变为(k*m,m-1,n+1)和(k*n,m+1,n-1).<br>
        用三元组来表示一个节点,堆式存储,展开成1024项,先按照sin和cos的幂次排序,合并同类项.
    </li>
    <li>一个6&times;5的棋盘,左上角为(1,1),右下角为(6,5).一个蚂蚁要从左上角走到右下角,每次只能向下或者向右走一步.不幸的是,有大树挡着,蚂蚁不得经过有大树的格子.

        <br>要求将最后答案用若干个组合数表示.<br><br>(1)在(4,3)和(2,4)处各有一棵大树.问蚂蚁有多少种走法?
        <table id="one" style="width: 200px; height: 200px"></table>
        <br>(2)在(2,3)和(4,4)处各有一棵大树,问蚂蚁有多少种走法?
        <table id="two" style="width: 200px; height: 200px"></table>
        <br><hr>
        <br>答案:蚂蚁向下走5步,向右走4步,一共走9步.这9步里面有4步是向右的,所以C<sup>4</sup><sub>9</sub>种情况.<br>
        但是因为有大树,所以就要减去不合法的走法.<br>
        <p>
        (1)经过(4,3)的路径的个数=从(1,1)到(4,3)的个数&times;从(4,3)到(6,5)的个数.<br>
        经过(2,4)的路径个数=从(1,1)到(2,4)的路径个数&times;从(2,4)到(6,5)的路径个数.<br>
            ans=C<sup>4</sup><sub>9</sub>-C<sup>2</sup><sub>5</sub>&times;C<sup>2</sup><sub>4</sub>-C<sup>1</sup><sub>4</sub>&times;C<sup>1</sup><sub>5</sub><br>

    </p><p>(2)因为(2,3)和(4,4)可能同时经过,所以用容斥原理<br>
        ans=总的-经过(2,3)的个数-经过(4,4)的个数+经过这两者的个数.<br>
        ans=C<sup>4</sup><sub>9</sub>-C<sup>1</sup><sub>3</sub>&times;C<sup>4</sup><sub>6</sub>-C<sup>3</sup><sub>6</sub>&times;C<sup>1</sup><sub>3</sub>+C<sup>1</sup><sub>3</sub>&times;C<sup>1</sup><sub>3</sub>&times;C<sup>1</sup><sub>3</sub>.
        </p></li>
</ol>
<script>
    function draw(ta,w,h,a){
        var s='';
        var k=0;
        for(var i=0;i<w;i++){
            s+='<tr>';
            for(var j=0;j<h;j++){
                if(i+1==a[k]&&j+1==a[k+1]){s+='<td class="tree"> ';k+=2;}
                else s+='<td class="grid"> ';
                s+='</td>';
            }
            s+='</tr>';
        }
        ta.innerHTML=s;
    }
    draw(one,6,5,new Array(2,4,4,3));
    draw(two,6,5,new Array(2,3,4,4));
</script>
</html>

 

转载于:https://www.cnblogs.com/weiyinfu/p/5735565.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值