mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-06 15:09:40 +08:00
开发商购买土地解法 JavaScript版本
This commit is contained in:
@ -388,6 +388,62 @@ if __name__ == "__main__":
|
||||
main()
|
||||
|
||||
```
|
||||
|
||||
### JavaScript
|
||||
|
||||
前缀和
|
||||
```js
|
||||
function func() {
|
||||
const readline = require('readline')
|
||||
const rl = readline.createInterface({
|
||||
input: process.stdin,
|
||||
output: process.stdout
|
||||
})
|
||||
let inputLines = []
|
||||
rl.on('line', function (line) {
|
||||
inputLines.push(line.trim())
|
||||
})
|
||||
|
||||
rl.on('close', function () {
|
||||
let [n, m] = inputLines[0].split(" ").map(Number)
|
||||
let c = new Array(n).fill(0)
|
||||
let r = new Array(m).fill(0)
|
||||
let arr = new Array(n)
|
||||
let sum = 0//数组总和
|
||||
let min = Infinity//设置最小值的初始值为无限大
|
||||
//定义数组
|
||||
for (let s = 0; s < n; s++) {
|
||||
arr[s] = inputLines[s + 1].split(" ").map(Number)
|
||||
}
|
||||
//每一行的和
|
||||
for (let i = 0; i < n; i++) {
|
||||
for (let j = 0; j < m; j++) {
|
||||
c[i] += arr[i][j]
|
||||
sum += arr[i][j]
|
||||
}
|
||||
}
|
||||
//每一列的和
|
||||
for (let i = 0; i < n; i++) {
|
||||
for (let j = 0; j < m; j++) {
|
||||
r[j] += arr[i][j]
|
||||
}
|
||||
}
|
||||
let sum1 = 0, sum2 = 0
|
||||
//横向切割
|
||||
for (let i = 0; i < n; i++) {
|
||||
sum1 += c[i]
|
||||
min = min < Math.abs(sum - 2 * sum1) ? min : Math.abs(sum - 2 * sum1)
|
||||
}
|
||||
//纵向切割
|
||||
for (let j = 0; j < m; j++) {
|
||||
sum2 += r[j]
|
||||
min = min < Math.abs(sum - 2 * sum2) ? min : Math.abs(sum - 2 * sum2)
|
||||
}
|
||||
console.log(min);
|
||||
})
|
||||
}
|
||||
```
|
||||
|
||||
### C
|
||||
|
||||
前缀和
|
||||
|
Reference in New Issue
Block a user