2025.01.06 TIL

gksrudtlr
|2025. 1. 10. 09:53

NAS

NAS란?

  • 네트워크에 연결된 저장장치
  • 중앙에서 데이터를 저장하고 여러 사용자가 네트워크를 통해 이 데이터를 공유할 수 있도록 설계된 파일 저장 시스템

    특징

  • 파일 기반 저장소
  • 네트워크 연결
  • 확장성
  • 쉬운 관리

    장점

  • 중앙회된 데이터 관리
  • 여러 장치에서 동시에 데이터에 접근 가능
  • 상대적으로 저렴한 비용으로 대량의 데이터 저장 가능
  • 데이터 보안을 위한 RAID 및 백업 가능

코딩 테스트

수학숙제

  • 함정이 있어 생각보다 쉽지 않았다
  • int, long long으로 표현할 수 있는 수의 한개를 생각하여 string으로 값을 출력하는 문제였으며 sort를 이용한 정렬시 string은 front부터 아스키코드를 비교해 정렬을 하는것을 몰랐었기 때문에 함정이였다
  • 이를 알고 푼다면 입력받은 문자열중 연속된 숫자를 따로 저장해 조건에 맞게 연산하여 배열에 저장해준다
  • 그 후 sort로 정렬할때 Compare 함수를 구현하여 정렬해주면 된다

    쿼드트리

  • 문제 이해가 잘 안되 시간도 오래걸리고 해설을 보고 문제를 이해한 문제이다
  • 파일을 압축하는데 같은 숫자로 이뤄진 파일이 아니면 4등분으로 나눠 압축하고, 나눠진 부분에서도 다른 숫자가 존재한다면 4등분으로 다시 나누는 식으로 계속해서 쪼개 압축한다
  • 이를 이용해 DFS를 이용해 풀면 되는 문제이다
  • 이때 첫 시작 지점을 0,0으로 행렬의 크기 k를 DFS함수의 매개변수로 넘겨줄 것이다
  • 그렇게 재귀함수를 돌면서 char temp에 현재 행렬의 위치를 임시로 저장해주고 string result에 결과를 저장할 것이다
  • i = y부터 y+k, j = x부터 x+k만큼 이중 for문을 돌면서 temp와 현재 위치에 저장된 값이 다르다면 현재 행렬을 4등분하여 왼쪽위, 오른쪽 위, 왼쪽 아래, 오른쪽 아래 순으로 다시 다른 숫자가 있는지 판단하여 압축을 진행하도록 한다
  • 이때 왼쪽 위는 y,x 좌표는 그대로고 행렬의 길이 k 만 반으로 줄면된다
  • 오른쪽 위는 y는 그대로, x좌표는 k/2+x좌표로 변경하여 현재 행렬의 k의 절반 지점에 x를 더한 값 만큼 시작할 수 있게 만들어준다. 물론 k/2를 넘겨줘야한다
  • 왼쪽 아래는 x는 그대로 y + k/2, k/2, 오른쪽 아래는 x+k/2,y+k/2,k/2를 넘겨주어 4등분했을 때 시작 지점을 바꿔가며 판단할 수 있게 해준다
  • 이때 k == 1일땐 더이상 판단하지 않아도되는 최소 값이므로 현재 배열에 저장된 값을 리턴해준다
  • 이렇게 if문안에서 재귀함수를 모두 탈출하면 result를 리턴해준다
  • 뿐만아니라 아무런 조건문에 걸리지 않고 함수의 끝에서는 역시 배열에 현 위치에 있는 값을 리턴해준다

    기상 캐스터

  • 가장 쉬웠던 문제로 각 행끼리 비교해 구름이 없으면 -1, 구름이 있으면 0부터 1을 누적해 더한 값을 배열에 넣어주면 되는 문제이다

    Unreal C++ 숙제

  • 액터가 게임 시작시 0,0지점에서 시작해 렌덤한 숫자 0~1을 입력받아 위치를 변경하고, 변경된 위치까지의 거리를 구하고, 50%로 발생되는 이벤트를 출력해주는 문제였다
  • 또한 이벤트가 발생한 총 횟수와 첫 지점에서 이동한 총 거리를 마지막에 출력해주는 문제로 엔진내부에 함수들을 찾으면 금방 풀 수 있는 문제였따

'TIL' 카테고리의 다른 글

2025.01.08 TIL  (1) 2025.01.10
2025.01.07 TIL  (0) 2025.01.10
2024.12.26 TIL  (0) 2025.01.10
2024.12.24 TIL  (1) 2025.01.10
2024.12.19 TIL  (0) 2024.12.26