코더 장군
강아지코더
코더 장군
전체 방문자
오늘
어제
  • 분류 전체보기 (67)
    • 프론트엔드 (24)
      • react (9)
      • html5 * css3 (1)
      • Javascript (10)
    • 개발일기 (36)
      • 알고리즘 (27)
      • 블록체인 (3)
      • mongoDB (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 백준
  • 비공개#일기
  • 일기#심리상담

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
코더 장군

강아지코더

개발일기/알고리즘

음양 더하기

2021. 11. 8. 22:01

그냥 양수는 덧셈 , 음수는 뺄셈이라는 생각을 못하고 배열를 다시 만들어서 다시 덧셈을 할려고 했었다. 그러니깐 무의미한 코드가 늘어나고 원래 생각 했던 것에서 벗어났었다. 심플하지도 못하고 클린하지 못하고 무엇보다 답이 아니라고 해서 해설를 찾아보고 다시 작성해 보왔고 내 생각보다 클린한 코딩에 놀랐었다.

const ab = [ 10, 10, 30, 6]
const ah = [ false , true , false , true ]

solution(ab,ah) // -24

function solution(absolutes, signs){
		//answer는 비어 있는 변수이다.
    let answer = 0
		// forEach문은 요소 각각를 부여할수도 있고 i라는 index값도 부여할 수 있다. 
    absolutes.forEach((el , i) => {
				// signs[i]값이 true이면 
        if(signs[i]){
						// answer 값에 el 값을 더한다. 
            answer += el
						// 그 외
        }else{
						// answer 값에 el 값을 뺀다. 
            answer -= el
        }
    });
		// 외부에 변수 answer는 반복되지 않고 값을 축적된다. 
    return answer
}

// function solution(absolutes, signs) {
//     let obj = []
//     for(let i = 0 ; i < absolutes.length ; i++){
//         if(signs[i] == false){
//              obj.push(absolutes[i]*-1);
//         }else{
//              obj.push(absolutes[i])
//         }
//         console.log(obj);
//         if(i == absolutes.slice(-1)[0]){
//             let sum = 0;
//             obj.forEach((item)=>{
//                 sum += item
//                 console.log(sum)
//             })
            
//         }
//     }
// }

'개발일기 > 알고리즘' 카테고리의 다른 글

나누어 떨어지는 숫자 배열  (0) 2021.11.08
행렬의 덧셈  (0) 2021.11.08
문자열 정수로 바꾸기  (0) 2021.11.08
직사각형 별찍기  (0) 2021.11.08
백준 [ node.js ] 10172번 문제 개  (0) 2021.10.01
    '개발일기/알고리즘' 카테고리의 다른 글
    • 나누어 떨어지는 숫자 배열
    • 행렬의 덧셈
    • 문자열 정수로 바꾸기
    • 직사각형 별찍기
    코더 장군
    코더 장군
    강아지 키우고 있는 소소한 개발자 성장기를 쓰는 일기장입니다

    티스토리툴바