对于情况有限的问题,可以使用暴力破解方法。
对有限的问题,加以条件筛选。即可得到想要的数据。
剪枝:为了让计算机避免一些无用的,徒劳的动作。
```
function getWay(num) {
var num = num * 10
for (var i = 0; i <=num / 50; i++) {
for (var j = 0; j <= num / 20; j++) {
for (var k = 0; k <= num / 10; k++) {
for (var m = 0; m <= num / 5; m++) {
if (i * 50 + j * 20 + k * 10 + m * 5 == num) {
console.log('i=>' + i + 'j=>' + j + 'k=>' + k + 'm=>' + m)
}
}
}
}
}
}
getWay(8)
result:
i=>0j=>0k=>0m=>16
i=>0j=>0k=>1m=>14
i=>0j=>0k=>2m=>12
i=>0j=>0k=>3m=>10
i=>0j=>0k=>4m=>8
i=>0j=>0k=>5m=>6
i=>0j=>0k=>6m=>4
i=>0j=>0k=>7m=>2
i=>0j=>0k=>8m=>0
i=>0j=>1k=>0m=>12
i=>0j=>1k=>1m=>10
i=>0j=>1k=>2m=>8
i=>0j=>1k=>3m=>6
i=>0j=>1k=>4m=>4
i=>0j=>1k=>5m=>2
i=>0j=>1k=>6m=>0
i=>0j=>2k=>0m=>8
i=>0j=>2k=>1m=>6
i=>0j=>2k=>2m=>4
i=>0j=>2k=>3m=>2
i=>0j=>2k=>4m=>0
i=>0j=>3k=>0m=>4
i=>0j=>3k=>1m=>2
i=>0j=>3k=>2m=>0
i=>0j=>4k=>0m=>0
i=>1j=>0k=>0m=>6
i=>1j=>0k=>1m=>4
i=>1j=>0k=>2m=>2
i=>1j=>0k=>3m=>0
i=>1j=>1k=>0m=>2
i=>1j=>1k=>1m=>0
```
```
function getWay(num) {
var num = num * 10
for (var i = 0; i <= num / 50; i++) {
for (var j = 0; j <= num / 20; j++) {
if ((num - i * 50) < 0) break
for (var k = 0; k <= num / 10; k++) {
if ((num - i * 50 - j * 20 - k * 10) < 0) break
var m =(num - i * 50 - j * 20 - k * 10)/5
if (i * 50 + j * 20 + k * 10 + m * 5 == num) {
console.log('i=>' + i + 'j=>' + j + 'k=>' + k + 'm=>' + m)
}
}
}
}
}
getWay(8)
结果:
i=>0j=>0k=>0m=>16
i=>0j=>0k=>1m=>14
i=>0j=>0k=>2m=>12
i=>0j=>0k=>3m=>10
i=>0j=>0k=>4m=>8
i=>0j=>0k=>5m=>6
i=>0j=>0k=>6m=>4
i=>0j=>0k=>7m=>2
i=>0j=>0k=>8m=>0
i=>0j=>1k=>0m=>12
i=>0j=>1k=>1m=>10
i=>0j=>1k=>2m=>8
i=>0j=>1k=>3m=>6
i=>0j=>1k=>4m=>4
i=>0j=>1k=>5m=>2
i=>0j=>1k=>6m=>0
i=>0j=>2k=>0m=>8
i=>0j=>2k=>1m=>6
i=>0j=>2k=>2m=>4
i=>0j=>2k=>3m=>2
i=>0j=>2k=>4m=>0
i=>0j=>3k=>0m=>4
i=>0j=>3k=>1m=>2
i=>0j=>3k=>2m=>0
i=>0j=>4k=>0m=>0
i=>1j=>0k=>0m=>6
i=>1j=>0k=>1m=>4
i=>1j=>0k=>2m=>2
i=>1j=>0k=>3m=>0
i=>1j=>1k=>0m=>2
i=>1j=>1k=>1m=>0
```
```
function getMax(a, b, c) {
var m = a;
m= m > b ? m : b
m =m > c ? m : c
console.log(m)
}
getMax(56, 23, 90)
```
```
/**
* 判断闰年的规则,能被4整除,但是不能被100整除
* 能被400整除
*
*
*
*
*/
function getYear(year) {
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
return year + '是闰年'
} else {
return '不是闰年'
}
}
console.log(getYear(2000))
//假设修正法
function getYearTwo(year) {
var flag = false
if (year % 4 == 0) flag = true
if (year % 100 == 0) flag = false
if (year % 400) flag = true
if (flag) {
return year + '是闰年'
} else {
return '不是闰年'
}
}
console.log(getYearTwo(1990))
```
先用最笨的方法,写出想要的格式,然后,改写成变量的格式
```
//打印金字塔
function printStar(n) {
for(i=1;i<=n;i++){
for(j=1;j<=n-i;j++){
document.write(" ");
}
for(k=1;k<=2*i-1;k++){
document.write("*")
}
document.write("<br/>")
}
}
printStar(10)
```