[牛客网] 拼凑三角形

[编程题] 拼凑三角形

时间限制:1秒
空间限制:32768K
牛牛手中有三根木棍,长度分别是a,b,c。牛牛可以把任一一根木棍长度削短,牛牛的目标是让这三根木棍构成一个三角形,并且牛牛还希望这个三角形的周长越大越好。

输入描述:

输入包括一行,一行中有正整数a, b, c(1 ≤ a, b, c ≤ 100), 以空格分割

输出描述:

输出一个整数,表示能拼凑出的周长最大的三角形。

输入例子1:
1 2 3

输出例子1:
5

let ans = (line)=>{
    let ret = 0
    let lines = line.split(' ')
    let a = parseInt(lines[0]),b = parseInt(lines[1]),c = parseInt(lines[2])
    let a1 = a,b1 = b,c1 = c
    if(a+b>c&&a+c>b&&b+c>a){
        ret=a+b+c
    }

    while(a1){
        if((a1+b>c) && (a1+c>b) && (b+c>a1 ) ){
            if(a1 +b+c>ret){
                ret = a1 +b+c
            }
            break
        }else{
            a1 --
        }
    }
    while(b1){
        if((a+b1>c) && (a+c>b1) && (b1+c>a) ){

            if(a+b1+c>ret){
                ret = a+b1+c
            }
            break
        }else{
            b1--
        }
    }
    while(c1){
        if((a+b>c1) && (a+c1>b) && (b+c1>a) ){
            if(a+b+c1>ret){
                ret = a+b+c1
            }
            break

        }else{
            c1--
        }
    }
    return ret
}
console.log(ans('1 2 3'))
console.log(ans('2 2 2'))

你可能感兴趣的:(牛客网)