zoukankan      html  css  js  c++  java
  • 一个小的算法问题解决

    问题在这里:
    http://twobug.cnblogs.com/archive/2005/09/30/247550.html

    我的代码:

    <SCRIPT LANGUAGE="JavaScript">
    <!--
    /*
    题目描述:
        一个正整数有可能可以被表示为n(n>=2)个连续正整数之和,如:
        15=1+2+3+4+5
        15=4+5+6
        15=7+8
        请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列。

        solved by Neil Chen, 2005-10-1
    */

    // 解决问题
    function solve(k) {
        
    var result = new Array();
        
        
    for (var m = 1; m < k/2; m++) {
            
    for (var n = m + 1; n <= (k+1)/2; n++) {
                
    if ((m + n) * (n - m + 1)/2 == k)
                    result[result.length] 
    = [m, n];
            }
        }
        
    return result;
    }

    // 打印结果
    function printResult(result) {
        
    if (result.length > 0) {
            
    for (var i = 0; i < result.length; i++) {            
                
    for (j = result[i][0]; j <= result[i][1]; j++) {
                    document.write(j 
    + " ");
                }
                document.write(
    "<br/>");
            }
        }
        
    else {
            document.write(
    "NONE");
        }        
    }

    // 测试
    document.write("solve 15:<br/>");
    printResult(solve(
    15));

    document.write(
    "<br/>");

    document.write(
    "solve 16:<br/>");
    printResult(solve(
    16));

    //-->
    </SCRIPT>
  • 相关阅读:
    Deployment descriptor
    实体、list 、xml之间的转化
    关于C# 汉字转拼音问题
    NPoco学习笔记(1)
    SQL(二)
    SQL(一)
    sobel算子及cvSobel
    图像的平滑处理
    erase的用法
    int main(int argc, char* argv[ ])
  • 原文地址:https://www.cnblogs.com/RChen/p/247634.html
Copyright © 2011-2022 走看看