전체보기 433

[백준 2501] 약수 구하기

안녕하세요. BlockDMask 입니다.오늘도 간단하게 전체 탐색법을 이용하여 약수를 구하는 문제를 풀어보았습니다.0. 제목백준 2501 약수 구하기BOJ 2501 약수 구하기1. 문제 설명 약수란어떤 자연수 a, b 가 있을때a를 b로 나누었을때 나머지가 0 이면 b는 a의 약수라 한다. 12 를 예로 들자면 12 / 1 = 12 ---> 012 / 2 = 6 ---> 012 / 3 = 4 ---> 012 / 4 = 3 ---> 012 / 5 = 2 ---> 212 / 6 = 2 ---> 012 / 7 = 1 ---> 512 / 8 = 1 ---> 412 / 9 = 1 ---> 312 / 10 = 1 ---> 212 / 11 = 1 ---> 112 / 12 = 1 ---> 0 12 의 약수는 1, 2,..

[데통] Wireshark (와이어샤크) 사용방법

1. 와이어샤크 화면 구성 - 와이어샤크 패킷을 캡쳐하게 되면 이렇게 화면이 나옵니다. 1번 영역은 - Packet List(패킷 리스트 영역) 입니다. : No - 패킷의 일련 번호를 표시합니다. (패킷 숫자를 알 수도 있음) : Time - 패킷 캡쳐를 시작하고 걸린 시간을 나타냅니다. : Source - 패킷의 출발지 주소 : Destination - 패킷의 목적지 주소 : Protocol - 프로토콜의 이름 : Length - 패킷의 길이(크기)를 bytes로 나타내줍니다. : Info - 와이어샤크가 스스로 분석하여 packet에서 가장 중요한 정보를 판단해서 보여줍니다.2번 영역은 - Packet Details(패킷 상세 영역) 입니다. : Packet List영역에서 패킷을 선택했을때, 선택..

[C++] sort algorithm 정리 및 예시

안녕하세요BlockDMask 입니다.오늘은 C++ STL 에서 제공하는 알고리즘 중에 sort 알고리즘에 대해 알아보겠습니다.0. sort algorithm sort 알고리즘은 헤더파일에 속해있습니다.sort(start, end)를 이용하여 [start, end) 의 범위에 있는 인자(element)를 오름차순(default)으로 정렬해주는 함수 입니다. start를 포함하고 end를 포함하지 않는 구간. (iterator를 생각하면됩니다.)quick sort(퀵 정렬)을 기반으로 함수가 구현되어있어, 평균 시간복잡도는 n log n 입니다. 따로 quick sort를 구현할 필요 없이 C++ STL에서 제공해주는 sort 함수를 이용하면 편리하게 정렬 할 수 있습니다.1. 원형 및 사용법원형templa..

[백준 9506] 약수들의 합

안녕하세요. BlockDMask 입니다.조금 간단한 문제를 풀어보았습니다.약수들의 합을 구하는 문제 입니다. 170907 문제 빼먹음 -> 171016 완료0. 제목백준 9506 약수들의 합BOJ 9506 약수들의 합1. 문제 설명 n의 범위가 (2 < n < 100,000)인 어떤 수 n에 대해 숫자 n이 자신을 제외한 약수들의 합으로 나타내어 지면, 그 수를 '완벽한 수'라고 한다. 예를 들으 6은 6 = 1 + 2+ 3 이므로 완벽한 수이다. n이 완벽한 수 인지 아닌지 판단해주는 프로그램을 작성하면 됩니다. -- 입력 --테스트 케이스마다 한 줄 간격으로 n 이 주어집니다. 입력이 마지막엔 -1 이 주어집니다. -- 출력 --테스트케이스 마다 한줄에 하나씩 출력해야합니다.n이 완벽한 수라면, n ..

[데통] Wireshark 란? (+설치방법)

1. wireshark 란? - 위키피디아 : Wireshark is a free and open source packet analyzer. It is used for network troubleshooting, analysis, software and communications protocol development, and education. - 와이어샤크는 network상의 packet을 분석해서 보여주는 무료 오픈 툴(tool)입니다. - packet을 분석하는 일은 wireshark가 하지만, packet을 포착(capture)하는 기능은 다른 도구(libpcap, WinPcap driver)가 진행 합니다. : 패킷 캡쳐 드라이버(WinPcap - 윈도우용, libpcap - 유닉스/리눅스용)가..

[백준 2178] 미로탐색 (BFS-너비우선탐색)

안녕하세요. BlockDMask 입니다.오늘은 BFS algorithm 기반으로 미로탐색 문제를 풀어보았습니다.0. 제목백준 2178 미로탐색(BFS-너비우선탐색)BOJ 2178 MAZE(BFS-너비우선탐색)1. 문제 설명 N x M 크기의 배열로 표현되는 미로가 있습니다. 4x6 예시.[101111][101010][101011][111011] 미로에서 1은 이동할 수 있는 칸을 나타내고 0은 이동할 수 없는 칸을 나타냅니다. 이러한 미로가 주어졌을 때 [0,0] 에서 출발하여 배열기준 [N-1, M-1] 의 위치로 이동할 때 지나야 하는 최소의 칸 수를 구하는 프로그램을 구현하면 됩니다. 입력 : 첫째 줄에 두 정수 N, M (2 지나간 길을 알릴 뿐만 아니라 몇번째에 왔는지 숫자를 기록하면서 이동해야..

[백준 9663] N-Queen(DFS 깊이우선탐색)

안녕하세요 BlockDMask 입니다.오늘은 다들 학교에서 한번쯤 들어본 N-Queen 체스 문제를 풀어보았습니다.은근 신경써야 하는 부분이 많더군요;;;;0. 제목백준 9663 N-Queen (DFS)BOJ 9663 N-Queen (DFS)1. 문제 설명N-Queen 문제는 체스판 크기가 N x N 인 체스판 위에 퀸 N개를 서로 공격하지 못하도록 배치하는 총 방법의 수를 구하는 프로그램을 작성하는 문제입니다.정수 n이 입력으로 들어옵니다. (1 그 다음 행에서 위의 행의 퀸과 일치 하지 않는 맨 왼쪽 열에 퀸을 놓습니다. -> n 번째 열까지 도달한다면 전체 count 를 하나 더합니다. -> 그렇지 않다면 다시 백트랙킹합니다. 배열 arr은 열의 개수 를 뜻합니다.같은 열(세로)라인에 Queen이 ..

[백준 2667] 단지번호붙이기(BFS-너비우선탐색)

안녕하세요 BlockDMask 입니다. 171011 일자 문제 입니다.포스팅을 늦게 했네요;;이번시간엔 단지번호 붙이기를 BFS 방식으로 풀어보았습니다.단지 번호 붙이기 DFS 방식으로 푼 포스트는 [여기] 있습니다.0. 제목백준 2667 단지 번호 붙이기BOJ 2667 단지 번호 붙이기1. 문제 설명 과 같이 정사각형(5

[이론] 소켓(Socket)이란?

안녕하세요. BlockDMask 입니다.TCP/IP 소켓 프로그래밍에 대해 알아보겠습니다. > 소켓(Socket)이란? - 소켓을 이용하면 인터넷의 복잡한 하부구조에 대한 세부적인 지식 없이도 손쉽게 네트워크 프로그램을 개발할 수 있다. - TCP/IP 4계층 (네트워크 접속, 인터넷, 전송, 응용 계층)에서 응용계층 바로 아래에 소켓 계층을 만들어서 응용 계층 하위단계의 자세한 내용을 모른다 하더라도 소켓을 이용하면 응용계층만 신경쓰고 네트워크 프로그램을 개발 할 수 있다. - "하위계층 몰라도되니까 응용계층만 생각하고 소켓 가지고 네트워크 개발해라" (뭐 이런 요지에서 UC 버클리 대학에서 만들었다는..?)- BSD 소켓 (Berkeley Software Distribute Socket) : UC 버..

[Linux] 우분투(Ubuntu) 설치하기(2/2)

안녕하세요. BlockDMask 입니다.오늘은 virtual box 에 만들어 놓은 우분투용 가상 머신에우분투 OS를 설치 하는 과정을 포스팅 하겠습니다. 우선 Virtual Box에 우분투용 가상 머신이 있어야 합니다.우분투 iso 파일이 있어야합니다. 준비가 안되신 분들은 [바로가기] 포스트를 확인하시고 준비해주고 와주세요! > 화살표 부분인 [광학 드라이브]부분을 클릭해 줍니다. > 다운받은 우분투(Ubuntu) ISO 파일을 열어 줍니다. > 설치 화면이 뜹니다.언어를 선택해 줍니다. English를 선택하시거나 > 아래를 보면 한국어도 지원이 됩니다 > 설치 중에 업데이트 할건지 체크 하고 Continue > Continue! > 날짜랑 시간의 기준을 알기 위해 위치를 입력해 줍니다. > Key..