function creditCardCheck(num) {
var computed = makeComputed()
var i = (num + '').length
var start = false // why false? since double every the second index but start from right
var sum = 0
// start from right
while (i--) {
n = Number(num[i])
// console.log(n, n % 2)
if (start) {
console.log(n)
sum += computed[n]
} else {
sum += n
}
start = !start
}
console.log('sum is:', sum)
return sum % 10 === 0
}
function isPrime(num) {
if (num < 2) {
return false
}
// Check for divisibility from 2 to the square root of the number
for (let i = 2; i * i <= num; i++) {
if (num % i === 0) {
return false // If the number is divisible, it's not prime
}
}
return true // If no divisors were found, the number is prime
}
function countFPB(a, b) {
// Gunakan algoritma Euclidean untuk mencari FPB
while (b !== 0) {
let temp = b
b = a % b
a = temp
}
return a
}
function fib(n) {
var a = 1
var b = 0
var temp
while (n >= 0) {
temp = a
a = a + b
b = temp
n--
}
return b
}
function year(year) {
return Math.floor((year + 99) / 100)
}
// create function to get avg without ausing any built-in function
function getAvg(arr) {
var sum = 0
var count = 0
for (let i = 0; i < arr.length; i++) {
sum += arr[i]
count++
}
return sum / count
}
// create function to sort and array and accept second parameter as boolean to sort in descending order or ascending order
function sortArray(arr, desc) {
var temp = 0
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (desc) {
if (arr[i] < arr[j]) {
temp = arr[i]
arr[i] = arr[j]
arr[j] = temp
}
} else {
if (arr[i] > arr[j]) {
temp = arr[i]
arr[i] = arr[j]
arr[j] = temp
}
}
}
}
return arr
}
function isPalindrome(str) {
var reverse = ''
var w = str.length
while (w--) {
reverse += str[w]
}
return reverse === str
}
function moveArr(arr) {
var temp = 0
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
temp = arr[i]
arr[i] = arr[j]
arr[j] = temp
}
}
}
return arr
}
function makeComputed() {
var computed = []
for (let i = 0; i <= 9; i++) {
computed.push((res = i * 2) > 9 ? res - 9 : res)
}
return computed
}
function solution(col, row) {
// Total kolom dan baris
const totalColumns = 18
const totalRows = 15
// Kolom yang akan dipertimbangkan (current, left, right)
let consideredColumns = [col - 1, col, col + 1]
// Filter kolom yang valid (harus berada dalam rentang 1 hingga 18)
consideredColumns = consideredColumns.filter(
(c) => c >= 1 && c <= totalColumns
)
// Jumlah orang di baris di belakang baris tempat duduk saat ini
let peopleCount = 0
// Orang di baris belakang (row + 1 hingga total_rows)
peopleCount += consideredColumns.length * (totalRows - row)
return peopleCount
}
console.log(solution(3, 5))
Created
June 24, 2024 06:09
-
-
Save Aslam97/eaed5553e01a94c004c36de548acb9c1 to your computer and use it in GitHub Desktop.
interview
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment