본문 바로가기

알고리즘 트레이닝 북 지뢰찾기 // Minesweeper.cpp : 콘솔 응용 프로그램에 대한 진입점을 정의합니다. // #include "stdafx.h" #include #include using namespace std; //해당배열의 주위 지룃수를 리턴함 int calc(int xsize ,char* tarr, int x, int y) { // 특정 배열 구역을 찾음. char* arr = tarr + x + (xsize * y) ; if( (*arr) == '*' ) return 9; int MineCnt = 0; // 그 특정 구역역 주위를 검색. //예외처리 if( *(arr - 1) == '*' ) MineCnt++; if( *(arr + 1) == '*' ) MineCnt++; if( *(arr + (xsize* 1).. 더보기
알고리즘 트레이닝 북 3n+1 문제 // AlgoChallenges.cpp : 콘솔 응용 프로그램에 대한 진입점을 정의합니다. // #include "stdafx.h" #include using namespace std; int Calc(int num) { int cnt = 1; while( num != 1) { //짝수면 if( (num % 2) == 0 ) { num = num / 2; } else //홀수면 { num =(num* 3) +1; } cnt++; } return cnt; } int _tmain(int argc, _TCHAR* argv[]) { int inputA =0 , inputB = 0; cin >> inputA >> inputB; int curNum= 0; int oldMaxNum= 0; cout 더보기
어셈블리어 출처:http://elky.tistory.com/20 The Base knowledge of Reverse Engineering. 이번 글에서는 RE를 하는 데에 있어서의 기초 지식인 어셈블리어, 논리연산, 레지스터에 대해 간단하게 다룹니다. 1.어셈블리어 Push : sp 레지스터를 조작하는 명령어중의 하나이다. 스택에 데이터를 저장하는데 쓰인다. ex:) Push eax : 스택에 Eax의 값을 스택에 저장한다. ex:) Push 20 :즉석값인 20을 스택에 저장한다. ex:) Push 401F47 : 메모리 오프셋 401F47의 값을 스택에 저장한다. Pop : 이 또한 sp 레지스터를 조작하는 명령 어중 하나이다. 스택에서 데이터를 꺼내는데 쓰인다. ex:) Pop eax :스택에 가장 상위에 .. 더보기