๐ŸŽฒ ๋ฐฑ์ค€ 13305 ์ฃผ์œ ์†Œ

Jeongeunยท2023๋…„ 4์›” 22์ผ
0

๋ฐฑ์ค€

๋ชฉ๋ก ๋ณด๊ธฐ
54/185

๋ฐฑ์ค€ 13305๋ฒˆ

๐Ÿ’Š ์ž…๋ ฅ๊ฐ’๋ถ€ํ„ฐ BigInt๋ฅผ ํ•ด์ฃผ์–ด์•ผํ•œ๋‹ค.
๐Ÿ’Š BigInt๋Š” Math ๊ฐ์ฒด์˜ ๋ฉ”์„œ๋“œ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.

์˜ค๋‹ต ์ฝ”๋“œ(41์ )

const fs = require('fs'); 
const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');

const N = +input.shift();
const distance = input.shift().split(" ").map(Number);
const cost = input[0].split(" ").map(Number);
let result = 0;

for (let i = 0; i < distance.length; i++) {
  const front = cost.slice(0, i+1);
  const min = Math.min(...front);
  const temp = BigInt(min * distance[i]);
  result = BigInt(result) + temp;
}

console.log(BigInt(result).toString());

์ •๋‹ต ์ฝ”๋“œ

const fs = require('fs'); 
const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');

const N = +input.shift();
const distance = input.shift().split(" ").map(BigInt);
const cost = input[0].split(" ").map(BigInt);
let result = 0n;
let min = cost[0];
for (let i = 0; i < distance.length; i++) {
  if (min > cost[i]) {
    min = cost[i];
  }

  result += min * distance[i];
}

console.log(result.toString());

0๊ฐœ์˜ ๋Œ“๊ธ€