考试网 >> IT认证 >> 等级 >> 二级考试 >> C程序设计例解(03)

C程序设计例解(03)

发布时间:2006-06-28 00:04     点击:
分页:[1] 2 3 4 5  下一页

03. 找一个最小的自然数,使它等于不同的两组三个自然数的三次幂之和,即找最小的x,使得:

        x=a*a*a+b*b*b+c*c*c+d*d*d+e*e*e+f*f*f

    其中,a,b,c,d,e,f都是自然数,a<=b<=c<=d<=e<=f;  [a,b,c]!=[d,e,f]

解:

    利用上一问题的求解思想,上一问题在正方形平面下三角区内找解,本题在正立方体的下三角棱内找解。记i为三角棱体的平面,j为某平面的行,k为某行上的列。当前考察的下三角棱体的范围由最上平面至最下平面控制;对应每个平面的下三角区域,在每个下三角区域内当前待考查的行可由行的下界和上界控制,每个有效行上的候选列由其当前列来表示。因此有如下解法:

算法---找一个最小的自然数x,使它等于不同的两组三个自然数的三次幂之和

{

    以三角棱体的顶点为最初候选者;

    为最初寻找平面设定行的变化范围和列的初值;

    do

    {

        保存上一个候选者;

        if(当前候选者在最下平面)

        {

            寻找平面范围的最下平面向下进一层;

            为新平面设定行的变化范围;

        }

        if(在最上平面最下角点找到候选者)

            寻找平面范围的最上平面向下进一层;

        else

        {

            if(在第一列找到候选者)
分页:[1] 2 3 4 5  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有