02/27 TIL

|

알고리즘 2문제

  • BOJ Puyo Puyo : 시뮬레이션(약간의 dfs..쓰긴 씀)
    • 생각보다 구현이 쉽진 않은 문제였지만, 내가 생각하기에 감시같은 문제보단 쉬운 듯하다.
    • 이번 문제를 풀면서, 삼성 역테 시험 때 빠르게 작성해둘 것이 무엇이 있는지 생각해봤다.
      • 자주 쓰는 라이브러리 : iostream ,vector, queue, stack, cstdlib, cstring, algorithm,.. 등등
      • 방향 벡터 작성 : 동, 남, 서, 북 형태로
      • 별로 없는 듯한데, 더 생각해봐야겠다.
  • BOJ 체스판 다시 칠하기 : 이건 그냥 for문.. 생각보다 엄청 쉬움.. 끗.

  • 매일매일 2문제 잊지말고 풀고, 실수하면 그 자리에서 실수한 것 적자.

  • 지금 생각하기에 부족한 점
    • BOJ 아기 상어에서 갑자기 멘탈 털렸었는데, 디버깅해보니 bfs에 대한 개념이 부족해서 일어난 문제였다. 확실히 코드를 작성하고, 문제를 풀 줄 안다고 아는 것이 아니기에.. dfs, bfs에 대한 명확히 이해를 다시 해야겠다고 느꼈다.

    • priority queue 사용법을 잘 숙지하지 못했다. 나무를 다시 풀어보면서, 익혀도 좋을 듯하다.


Hash Table 개선 방향

  • search는 금방 짤 수 있는 거라서 금방 짰다.

  • 처음에 na982님의 hash 강의가 이해가 되지 않았는데, 직접 해보고 나니깐 이해가 된다. 아래 링크를 다시보고 해당 방식으로 코드를 구현해보자.
    • https://www.youtube.com/watch?v=_z8rigUdm5Q&list=PLdHw4xVmS1psQWuFH35CSBxsHS6VkAKOp&index=3&t=0s
  • 당장 내일은 LinkedList를 짜야 된다.. ㅠ

졸업 작품 - OCR

  • 오늘 tesseract ocr의 정확도와 가속화에 대해서 이야기를 해보았다.

  • 정확도
    • 일단, 각각의 칸을 padding을 줘서 자른다고 가정.
    • 그랬을 때, 모든 칸을 캡처해서 1배, 2배, 3배를 돌려본다.
    • 1배를 돌렸을 때, 잘 나오는 것은 빼고 2배 했을 때, 잘 나오는 것 빼고, 3배 한다.
      • 이 때, 잘 되는 것이 전체에서 몇 퍼센트인지 확률로 나타내자.
      • 자동으로 되게 하기 어려울 거 같긴 하다.. 후…
    • 어떤 전처리를 더 해야 잘 되는지 tesseract wiki를 더 잘 읽어봐야겠다.
  • 가속화
    • 일단, 지금은 아니지만 표 인식 팀과 합칠 때 I/O를 줄일 수 있다.
    • 또한, 현재 python 코드를 c++로 바꾸어 성능 향상을 기대해 볼 수 있다.
      • 이는 python 코드 작성된 것과 c++ 코드와 성능 비교를 해봐야 할 듯하다.
    • 그 후에 tesseract 내부 코드를 보고 수정하여 성능 향상을 기대해볼 수 있다.
  • 코드 분석을 하기 전에 구조 분석을 하기 위해서, 읽다만 논문을 읽어야 할 듯 하다.

오늘의 마지막 말

  • 알고리즘 문제 2문제씩 잘 풀고 있다. 졸업 작품도 힘내서 잘해보자.

  • 항상 생각하고 고민하며, 끊임없이 행동하자. 사실 실천이 가장 어렵다. 어렸을 적에 초등학교 시간표 짜는 걸 생각해보면, 맞는 걸 알 수 있다. 계획은 잘 세웠는데, 행동하지 않는거지..

  • 그 날 아침부터는 최선을 다하자고 다짐하고, 그 날 마칠 때는 후회하지는 말자.
    • 매일 후회하면 스트레스 받으니깐…
  • 시간 관리 잘하자.

  • 아침마다 IT 뉴스 분석이나 해볼까..