2021 정보처리기사 실기 1회 기출문제 * 문제 순서는 그냥 기억나는대로 * 한 문제는 잘 기억이 안나네요. 쉬운 문제였지 않을까 싶어요. * 정확히 복원한 것은 아니고 이러이러한 문제였다 정도로 봐주시면 될 것 같습니다. * 제시한 정답이 답이 아닐 수 있습니다. 참고해주세요. 1. 네트워크 계층의 역순 주소 결정 프로토콜 - RARP 2. 프로세스 간 통신을 의미하는 용어 공유 메모리, 소켓, 세마포어 등 의 메소드가 있다. - IPC 3. 웹 서비스 기술언어 또는 기술된 정의 파일의 총칭으로 XML로 기술된다. 웹 서비스의 구체적 내용이 기술되어 있어 서비스 제공 장소, 서비스 메시지 포맷, 프로토콜 등이 기술된다. - WSDL 4. (세션 하이재킹)은 '세션을 가로채다' 라는 의미로, 시스템에 ..
PostgreSQL은 무료 오픈소스 객체-관계형 데이터베이스다. 무료로 이용가능한 점이 큰 장점이라고 생각한다. www.enterprisedb.com/downloads/postgres-postgresql-downloads Download PostgreSQL Database for Windows, Linux and MacOS & 32-bit or 64-bit Versions | EDB Download PostgreSQL packages or installers free from EDB. Get PostgreSQL for Windows, Linux and MacOS platforms. Download 32-bit or 64-bit versions. Download open-source PostgreSQL n..
온라인에서 작업할 수 있는 무료 ERD툴을 소개하려합니다. www.erdcloud.com/ ERDCloud Draw ERD with your team members. All states are shared in real time. And it's FREE. Database modeling tool. www.erdcloud.com 위의 사이트는 무료 ERD 툴을 제공하는 사이트입니다. 온라인 상에서 작업할 수 있고, 정보공학 표기법(IE) Crow's foot notation을 사용하여 ERD를 그릴 수 있습니다. 종속엔터티의 둥근모서리표시나, 배타적관계 표시 기능은 아직 지원하지 않는 것 같습니다. 온라인으로 팀원간의 공동작업을 쉽게 진행할 수 있다는 것이 하나의 장점이고, 다른 사람들이 그린 ERD를 ..
windows10 환경에서 Flutter SDK를 다운로드 받고 환경변수 설정에서 사용자 환경변수 PATH에 경로를 지정해주고, 잘 설치가 완료되었는지 확인을 하려고 콘솔창(cmd)에서 flutter --version 을 입력하니 ERROR: unable to find git in your path 메세지가 발생했다. 에러 문구에서 쉽게 유추할 수 있다시피 git이 설치되어있는 경우 정상적으로 설치가 되어있는지 확인하거나, 재설치를 하면 된다. 다운로드가 되어있지 않은 경우에는 아래의 git 홈페이지에서 git을 다운로드해주면 된다. git-scm.com/downloads Git - Downloads Downloads Mac OS X Windows Linux/Unix Older releases are a..
벨만-포드 알고리즘(Bellman-Ford algorithm)은 시작노드에서 다른 모든 노드로 가는 최단 경로를 구하는 알고리즘이다. 길이(가중치)가 음수인 사이클을 포함하지 않는 모든 그래프를 처리할 수 있다. 또한 길이(가중치)가 음수인 사이클을 포함하는 지도 확인할 수 있다. 시작노드의 거리는 0으로 그리고 나머지 노드까지의 거리는 무한대로 초깃값을 설정하고, 이 값들을 차례로 줄여나가면서 더는 줄일 수 없을때 까지 반복한다. 알고리즘은 n-1번 진행되며, 라운드마다 m개의 간선을 처리하기 때문에 시간복잡도는 O(nm)이다. #include #include #include using namespace std; #define INF 99999999; int main() { // 간선 리스트 (시작노드..
오픽 성적증명서를 뽑을려고 했습니다. 하지만 보안프로그램들을 잔뜩 깔아야했습니다. 😠 게다가 보안프로그램을 깔았는데 크롬이라서 동작을 안하네요.. 😡 근데 또 사용하고 거슬리는 보안프로그램을 삭제했더니 컴퓨터 글씨가 깨졌습니다. 🤬 재부팅해도 그래도 브라우저 내의 글씨나 폴더 내의 파일명 등 글씨가 다 누가 지우개로 한번 훑고 간 것처럼 흐립니다. 오래전에 개발한 웹페이지를 계속해서 사용하는 경우 위와 같이 원치 않는 일이 가끔 생기곤 합니다. 이번엔 윈도우 글씨 깨짐 현상을 해결하는 방법에 대해서 알아보겠습니다. 윈도우 화면 하단 좌측에 아래와 같이 생긴 검색창에 cleartype을 쳐줍니다. 실행 이후엔 그냥 눈에 보기 편한 텍스트를 계속 골라주시면 다시 원상태로 돌아옵니다.
먼저 깊이 우선 탐색은 노드에서 진행할 수 있는 최대 지점까지 진행하고 되돌아오면서 옆으로 넘어가는 방식이다. 아래의 예시에서는 인접리스트로 그래프를 표현했고, 0번 노드에는 1, 3번 노드가 연결되어있다. 1번에는 2, 4번 노드가, 그리고 2번과 4번 노드는 5번과 연결되어있다. #include #include using namespace std; const int N = 6; // 인접리스트 vector adj[N]; //깊이 우선 탐색 bool visited[N]; void dfs(int s) { if (visited[s]) return; visited[s] = true; cout
최소공배수는 a * b 를 a와 b의 최대공약수로 나누면 쉽게 구할 수있다. 최대공약수를 찾기위해 유클리드 호제법을 이용하면 쉽다. 유클리드 호제법이란, a 와 b의 최대공약수를 구하기위해 a%b=c를 사용한다. c가 0이라면 b가 최대공약수이고, c가 0이 아니라면 gcd(a,b) = gcd(b,c)를 계산하면 된다. 15와 6의 최대공약수를 구하자면 15%6 = 3이므로 gcd(15,6) = gcd(6,3)과 같고 gcd(6,3)은 6%3 = 0 이므로 3이 최대공약수가 된다. 이를 코드로 구현하면 아래와 같다. int gcd(int a, int b){ if(b==0) return a; return gcd(b, a%b); } 추가로 확장 유클리드 알고리즘이 존재하는데, 이는 ax + by = c 에서..