목록분류 전체보기 (427)
안 쓰던 블로그
https://programmers.co.kr/learn/courses/18/lessons/1880 알고리즘 문제 해설 - 땅따먹기 | 프로그래머스 땅따먹기 게임을 하려고 합니다. 땅따먹기 게임의 땅(land)은 총 N행 4열로 이루어져 있고, 모든 칸에는 점수가 쓰여 있습니다. 1행부터 땅을 밟으며 한 행씩 내려올 때, 각 행의 4칸 중 한 칸만 밟으면서 내려와야 합니다. 단, 땅따먹기 게임에는 한 행씩 내려올 때, 같은 열을 연속해서 밟을 수 없는 특수 규칙이 있습니다. 예를 들면, | 1 | 2 | 3 | 5 | | 5 | 6 | 7 | 8 | | 4 | 3 | 2 | 1 | 로 땅이 주어졌다면 programmers.co.kr ABCD 1234 이렇게 수가 있다고 치면 A에 들어갈 최대 값은 A+2..
문제에 있는 사진을 다운로드 사진을 주는 걸 보니 일단 HxD에 넣어본다 그리고 뭘 볼까 생각했는데 문제 제목이 End Of Image니까 PNG파일의 끝을 의미하는 IEND를 검색 여기가 png파일의 끝 그러면 뒤에는 뭔가 봤더니 FF D9로 끝나는데 보통 JPG가 FF D8에서 시작하고 FF D9에서 끝남 그러면 png뒤에 jpg가 붙어있는 형태라는 것이라고 생각할 수 있다 IEND앞에 FF D8도 있음 FF D8~D9까지 긁어서 새로운 파일로 저장해준다(=카빙) 키 발견
친구와 비밀접선! 파일을 열어봅시당 192.168.0.123이 많이 보입니다 A씨가 192.168.0.123인듯 구글에서 검색 했다가 네이버도 갔다가 페북도 한 번 보고 네이버 블로그도 좀 보고.. 페이크로 넣은건가? 그와중에 보이는 Chat.exe 정말 수상한 파일명 추출해서 실행 채팅하는 프로그램 같음 ip를 넣어야 하는데.. 192.168.0.123을 넣어보겠습니다 그냥 들어갔더니 에러 방이 없어서 그런듯 Create Room으로 창을 켜놓고 로컬에서 로컬로 접속 했더니 접속이 잘 됨 이렇게 비밀 접선을 한 것으로 보이는데.. 그 다음에 뭐를 해야할지 모르겠다.. 둘이서 저걸로 네트워크를 통해 채팅했다면 뭔가 기록에 남지 않을까? GET이후의 패킷을 확인 뭔가 열심히 주고 받긴 하는데.. 그 이후를..
짱해커가 비번을 잊어버렸다고 한다 파일을 보면 정직하게 pcapng파일을 주는데 뭔가 로그인 흔적이 남았으니까 비번을 찾으라고 했을듯 그러면 일단 xcz.kr의 로그인 기록을 찾아보면 되지 않을까? nslookup으로 xcz.kr의 ip를 검색 1.234.80.148을 확인 이제 파일을 열어봅시다 1.234.80.148과 172.30.1.2이 보인다 1.234.80.148을 필터링 뭔가 웹페이지가 있다 login.php를 찾아서 tcp stream으로 내용을 까보자 login.php에 딱히 내용이 없음 다른 파일인가? 쭉 내리다보니 join_ok.php라는 파일을 찾았다 pw가 있음 근데 정답이 아니라서 다시 봤더니 id가 짱해커가 아니라 menboong이다ㅋㅋ 다시 join_ok 파일만 필터링 pw가 ..
xcz.kr 13번(네트워크) 문제에서 network_recover 이라는 확장자를 알 수 없는 파일을 준다 네트워크 문제니까 pcap파일을 줬을까 했는데 pcap의 파일 시그니처인 D4 C3 B2 A1은 없고 다른 게 보인다 0A 0D 0D 0A를 검색해 보니까 pcapng파일의 시그니처라고 함 pcapng는 pcap에다 인터페이스 정보나 이름 같은 거를 더 추가한 pcap 업그레이드 파일이다 파일 확장자를 바꿔서 와이어샤크로 불러옴 패킷을 보니까 27.255.67.44가 172.30.1.6한테 뭔가 자꾸 보내줌 http로 필터링을 해보자 172가 treasure1,2,3을 요구하고 있고 png파일이랑 plain text 두 개를 응답으로 받았음 딱 봐도 수상해보이니 셋 다 다운로드 받아보자 일단 pn..
단순 구현 어떤 알고리즘을 써서 문제를 풀 때도 구현이라고 하지만 여기서는 말 그대로 '문제를 읽고, 문제 자체를 구현'하는 단순 구현 문제를 의미합니다 단순 구현 문제는 보통 문제에 답이 있는 경우가 많으며, 문제를 읽고 가장 단순하게 생각해서 푸는 문제들도 단순 구현에 속합니다. 이렇게 단순 구현 문제들을 풀어둔다면 나중에 더 어려운 문제를 접하더라도, 문제를 단순하게 푸는 방법을 생각한다->시간이나 메모리를 더 줄일려면 어떻게 해야되지? 어떤 알고리즘을 써야되지? 이런 식으로 생각을 넓혀갈 수 있습니다. 단순 구현 문제는 간단히 풀리는 경우가 많으므로 문제풀이 공부에 회의감이 들거나 자존감이 낮아졌을 때, 재미로 풀면서 다시 공부하고자 하는 의지를 충전 할 수 있습니다. 먼저 문제만 보고 풀어본다-..
음수를 나머지 연산하려면 어떻게 해야 할까요? 질문에 앞에 먼저 음수 나눗셈을 해봅시다. 10/-2를 한다고 했을 때, 10/-2는 ‘-2를 몇 번 더해야(빼야) 10이 나올까?’와 같은 의미입니다. 10은 -(-2) -(-2) -(-2) -(-2) -(-2) 라고 쓸 수 있는데, 횟수로는 5번이지만 -2를 더하면 안 되고 빼야 되기 때문에 10/-2는 -5입니다. 같은 의미로 10=-2*-5도 ‘10은 -2를 -5번 더한(뺀) 수다’라고 할 수 있겠네요. 그러면 이제 나머지를 구해봅시다. 7/-3의 몫은 -2입니다. 그러면 나머지는? -(-3)-(-3)을 한 뒤 남은 수는 1이니까 나머지는 1입니다. -7/-3은 어떻게 나올까요? -7을 만들기 위해서는 -3-3-3을 해야 합니다. 몫은 3이고 -9가 ..