전체 글

소프트웨어 개발자입니다. 더 많은 사람들이 양질의 지식을 습득하기 위한 생태계 구축에 기여하기 위한 공간입니다.
카테고리 없음

[DFS, BFS, 구현] 이코테, 백준 18405번 경쟁적 전염, 두가지 풀이

경쟁적 전염 https://www.acmicpc.net/problem/18405 18405번: 경쟁적 전염 첫째 줄에 자연수 N, K가 공백을 기준으로 구분되어 주어진다. (1 ≤ N ≤ 200, 1 ≤ K ≤ 1,000) 둘째 줄부터 N개의 줄에 걸쳐서 시험관의 정보가 주어진다. 각 행은 N개의 원소로 구성되며, 해당 위치 www.acmicpc.net 사고 과정 보자마자 떠오르는 것은 이를 그대로 구현하는 방법이다. 매번 1, 2, 3 순서대로 전개하고 마지막에 정답을 찾는다. 매 초마다 1,2,3 순으로 전개해줘야 하기 때문에 순서를 queue를 이용하여 구하면 된다. 목표 위치에 가장 빨리 도달하는, 목표 위치를 가장 빨리 탐색하는 노드를 찾는 문제이므로 BFS로 해석할 수 있다. 또다른 풀이는 '..

TIL/일기

2021년 11월 26일 배움의 기쁨, 오늘을 기억하고 싶어 적었다.

오늘 세가지 기쁨이 있었다. 첫번째, 소프트웨어 프로그램 개발은 아주 재밌다. 또한 재밌을 것이다. 두번째, 장기적인 관점을 보며 쌓아왔던 일명 '가지치기' 사고방식이 나에게 큰 도움이 된다. 세번째, 내가 상상하는 것들을 만들 수 있는 사람이 됐다. 또한 될 것 같다. 첫번째 소프트웨어 개발이 아주 재밌고 재밌을 것 같다. 뭔가 잘 안맞으면서도 미묘하게 맞는 이 말은 오늘 알고리즘 공부를 하며 깨달았다. 나는 문제 해결을 아주 좋아하고 또한 효율적으로 문제가 해결되는 상황을 아주 좋아한다. 알고리즘의 시간 복잡도를 낮추는게 아주 재밌었다. 문제를 하나 더 또하나 더 풀고 싶은 감정이 들었다. 근데 이게 왜 그렇게 대단한 감정이냐고 누군가 물을 수 있다. 나는 문제 해결을 잘 못했고 알고리즘은 매우 못 ..

책 정리 & 리뷰

[CS 책] 비전공자가 책과 강의를 이용하여 컴퓨터 공학 지식을 학습할 순서

1. CODE 하드웨어와 소프트웨어에 숨어 있는 언어 (명저이므로 출처 생략) 2. 컴퓨터 과학이 여는 세계 (출처: https://m.blog.naver.com/bmt5111/222166322585) 3. 한 권으로 그리는 컴퓨터과학 로드맵 / 컴퓨터 사이언스, 새내기를 위한 최신 컴퓨터 개론 1. 컴퓨터 구조 - [입문] 컴퓨터 구조 프로그래밍 관점에서 바라보는 컴퓨터 구조 - 정기철 저 (출처: https://covenant.tistory.com/103?category=773722) - [심화] 컴퓨터구조 - 최규상 교수님 강의, 컴퓨터 구조 및 설계 - David A. Patterson,John L. Hennessy (출처: https://covenant.tistory.com/103) 2. 운영 ..

소프트웨어개발론

[소프트웨어개발론] 애자일, 스크럼, 칸반 이해하기

애자일이란? 1.사전적 정의 정해진 계획만 따르기보다, 개발 주기 혹은 소프트웨어 개발 환경에 따라 유연하게 대처하는 방식 (출처: 네이버 지식 백과) 신속하고 변화에 유연하며 적응적인(adaptive) 소프트웨어 개발을 목표로 하는 다양한 경량 개발 방법론 전체를 일컫는 총칭으로, 반복(iteration)이라 불리는 단기 단위를 채용함으로 위험을 최소화하는 개발 방법이다.(출처: 두산 백과) agile: 날렵한, 민첩한, (생각이) 재빠른 (출처: 네이버 영어사전) 즉 agile 영어 뜻 그대로 애자일은 상황에 따라 유연하게 일을 처리하기 위해 택하는 방법론을 말합니다. 은 개방 방법을 차로 비유한 상황입니다. 우측 첫번째 그림과 같이 차를 만들기 위해 처음부터 끝까지 완벽하게 계획된 설계하는 것이 아..

책 정리 & 리뷰

[책 정리] 증강 현실, 가상 현실과 공간 컴퓨팅, 10장 캐릭터 AI와 행동 양식

10-1장. 게임 캐릭터의 행동 양식을 설계할 때, 많은 문제점이 존재한다. 행동 양식이란? 1. 사전적 의미 몸을 움직여 동작하거나 어떤 일을 하는 일정한 모양이나 형식. (네이버 지식 백과) 한 개체가 가시적인 행동에 이르기까지 내리게 되는 일련의 결정('증강 현실, 가상현실과 공간 컴퓨팅- 팡갈리넌 저) 환경 인지를 바탕하여 다음에 수행할 행동을 결정하는 판단 과정은 고도의 복잡성을 보인다. 이때 판단들은 시간과 공간의 관점에서 규모의 차이로 인해 문제점이 있다. 게임 내 판단 과정은 퀘스트&전략, 활동&전술, 네비게이션, 애니메이션 순으로 구성된다고 가정하자.(물론 폭포수 이론과 같이 일방향적이 아닌, 중간에 게임 환경과 상호작용하는 구조다.) 2. 시간적 규모의 차이로 인한 문제점 서로 다른 모..

김민석(갈레, 페퍼)
개발자-김민석