윤만석

  • 홈
  • 태그
  • 방명록

종만북 2

[종만북] 부분 합

N명의 시험 성적이 내림차순으로 저장되어있는 배열 score이 있다고 할때 a등에서 b등까지 평균점수를 계산하자 평균점수를 계산할때는 score[a]에서 score[b]까지 더하고 b-a+1를 나누면 됩니다. 하지만 이 방법은 O(N)이 걸리게 됩니다. 따라서 부분합 배열 Sum을 사용하면 O(1)에 문제를 해결할 수 있습니다. 0 1 2 3 4 5 6 7 8 score 1 2 3 4 5 6 7 8 9 sum 1 3 6 10 15 21 28 36 45 부분합을 구현하는 함수는 다음과 같습니다 vector partialSum(vector score){ vectorret; int temp=0; for(int i=0;i0) ret-=psum[y1-1][x2]; if(x1>0) ret-=psum[y2][x1-1..

종만북 2022.09.08

[종만북] 비트마스크(Bitmask)

비트마스크란 이진수 표현을 자료구조로 쓰는 기법입니다. 비트 연산자로는 AND OR XOR NOT SHIFT등이 있습니다. AND a&b AND 1 0 1 1 0 0 0 1 OR a|b OR 1 0 1 1 1 0 1 0 XOR a^b XOR 1 0 1 0 1 0 1 0 NOT ~a NOT 1 0 0 1 SHIFT ab a를 b만큼 오른쪽으로 shift a/=2^b 유의할점 &,|,^ 등의 연산자는 ==또는 !=같은 비교연산자보다 우선순위가 낮습니다. 따라서 괄호를 치는것이 중요합니다. 64비트 정수를 비트마스크로 사용할 때 오버플로가 발생할 수 있습니다. 예를들어 bool isBitSet(unsigned long long a,int b){ return (a&(1

종만북 2022.09.05
이전
1
다음
더보기
프로필사진

윤만석

  • 분류 전체보기 (337)
    • 2024-summer-학부연구생 (11)
    • baekjoon (270)
    • math and deeplearning (1)
    • algorithm (1)
    • 종만북 (2)
    • programmers (25)
    • OS (0)
    • react.js (7)
    • node.js (2)
    • python (5)
    • java (10)

Tag

냅색, DFS, level3, 구현, BFS, DP, 위상정렬, 골드4, 트리에서DP, MCMF, 타잔알고리즘, 프로그래머스, LEVEL2, 백준, 골드5, 이분매칭, scc, 이분탐색, 백트래킹, 브루트포스,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/06   »
일 월 화 수 목 금 토
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바