반응형
SMALL

전체 글 70

Queue를 이용한 미용사 서비스와 고객관리

1. 개요 Queue를 이용하여 Server가 3명인 경우 Customer에 대한 time과 number요소들을 출력한다. 2. Code에 대한 설명 전체 서비스의 시간을 관장하는 Clock을 선언하고 이는 전체 시간을 담당한다. Server를 3명으로 설정하기 위해 Server가 가지는 service_time을 각각 1, 2, 3으로 선언하고 이 를 0으로 초기화 한다. 단, Server가 Customer를 받지 않을 경우 “잉여시간”으로 설정하기 위해 이를 service_idle_time으로 선언하고 초기화 한다. 모든 직원이 쉬고 있을 경우를 표현하기 위해 모든 Server의 service_time이 0이 될 경우 “직원 이 모두 쉬고 있습니다.” 를 출력한다. 단, clock이 1일 때부터 Cus..

코딩스터디 2019.09.09

stack구현/ stack 이용한 미로찾기 만들기

1. 서론 스택을 이용하여 현재 위치에서 출구까지의 경로를 기록하고 미로를 탈출한다. 2. Pseudo Code 3. maze.c(Code) #include #include #define MAX_SIZE 100 #define MAZE_SIZE 20 typedef struct Pos{ short x; short y; }Pos; typedef struct Stack { Pos data[MAX_SIZE]; int top; }Stack; char maze[MAZE_SIZE][MAZE_SIZE]={ {'0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'}, {'0', '1', '1', '1', '1', '1', '1'..

코딩스터디 2019.09.09

recursion/memoization 복잡도에 대해

1. 개요 Fibonacci Algorithm 을 recursive call, recursive call with memoization 을 이용하여 이 두가 지를 각각 프로그램하고 수행시간을 측정하고 그 결과를 그래프를 이용하여 비교하여 관찰 한다. 2. Fibonacci Algorithm 의 두 코드에 대한 Pseudo code 2.1 recursive call Pseudo code fib(n) { if n is 1 or 2, return 1; return fib(n-1) + fib(n-2); } 2.2 recursive call with memoization Pseudo code fib(n) { if memo[n] is zero; memo[n] = fib(n-1) + fib(n-2); return m..

코딩스터디 2019.09.09

자유의지 실존 비판에 따른 생명의 자유의지 실현 가능성

자유의지 실존 비판에 따른 생명의 자유의지 실현 가능성 중앙대학교 전자전기공학부 학부 4 년 정성윤(20145197) l 목차 1. 자유의지의 실존 2. 자유의지, 포기, 계획 그리고 운명 3. 무의식의 영역 4. 결정론 5. 자유의지 실현 가능성 1. 자유의지의 실존 인간은 선택을 한다. 하루에 할 일을 머리 속에 떠올리고 우선 순위를 세워 실천한다. 주 변 환경에 반응하기도 하며 매 순간 양자 택일, 혹은 복합적 선택을 하는, 나아가 앞으로 일어날 일들을 예상하여 계획하는 삶을 살아간다. 즉, 인간의 삶은 선택의 연속이다. 선택은 내면의 깊은 곳에 존재하는 자아가 나에게 건네는 메세지를 듣는 자유로운 행동이라고 생 각된다. 내가 하는 자아의 선택은 오롯이 나의 생각과 판단에 의해 발생되는 창발적 현상..

인공지능 비서_자연어 처리 (클로바 아이디어 제안서)

섬세한 나의 비서 ‘클로바’ 중앙대학교 창의 ICT 공과대학 전자전기공학부 2 년 정성윤 l 목차 1. 들어가는 말 2. 꼼꼼한 일정 관리 3. 섬세한 약속 제안 4. 내 머릿속의 어휘력 5. 나가는 말 1. 들어가는 말 ‘애플의 비서 시리(SIRI)’1의 ‘말귀’가 어두워 비서를 두어도 일은 내가 알아 서 관리하는 일상을 살아가며 4 차 산업혁명의 예고에 우리들은 맞서고 있다. 사용자가 일일이 관리하기에는 기억에 실수가 있을 수 있지만 높은 정확도 가 필요한 중요한 일들은 인류 발전의 산물인 인공지능이 맡아야 할 역할이 되었다. 이에 발맞춰 우리는 능력 좋은 인간의 비서같은 인공지능이 필요했 으며 이를 네이버가 도전했기에 이에 동의하여 아이디어를 보태려 한다. 앱은 사용자가 습관처럼 접근하는 요소가 가..

인공지능의 발전방향에 대한 연구

인공지능의 발전방향에 대한 연구 l 목차 생명 현상과 인공지능 인공지능의 공리주의 인공지능 판단 결과에 따른 신뢰성 인공지능 활용방안 제시 결론 1. 생명 현상과 인공지능 모든 생명현상은 과학적 현상이다. 생명이 병에 들거나, 기억을 저장하고 기억해 내거나, 상처가 난 몸이 어떻게 재생을 하는지. 새로운 생명은 어떠한 과정을 통해 생성이 되고, 혹 은 왜 감정을 느끼며 어떻게 감정이 형성되는지. 이 모든 현상은 생명 현상이며 이것은 잘 알려진 과학적 근거로 설명이 가능하고 재현 또한 가능하다. 사실 생명을 들여다 보면 일정 한 규칙으로 이루어진 주기율표의 원자들로 구성된 물질이며, 물질들 사이의 Systemic 하며 밀접한 상호작용으로 움직이는 유기체이다. 한 생명체의 모든 정보를 담고 있는 DNA 조차..

초보 개발자 썰

이곳에 내 썰을 하나하나씩 적어보는 것이 어떤가 싶었다. 개발자가 되고 싶어서 여러 방면으로 들쑤시고 넘어지는 경우가 일쑤였던 나였던지라 개발이야기에서 첫 제목이 초보 '개발자' 썰이라고 적어는 놨지만 개발자라고 명하기엔 뭐하고 사실 그냥 초보가 맞다. 얼마전 술자리 모임에서 이런 고민을 친구에게서 들었다. 좋아하는 일을 하게 되면 좋겠는데 어떤 일을 하는게 좋을까. 지금 나의 나이대에 누구든 할 수 있는 고민이라고 생각해서 생각에 잠겼는데, 친구는 요리 해줄때가 제일 행복하다고 얘기를 했다. 그래서 그 말이 계속 맴돌아서 한참을 생각을 했던거 같다. 사실 지금까지 많은 진로고민을 해왔지 않았을까 그때마다 주변어른들 말이, 가령 예를들면 음악을 한다고 치자, 그렇다면 그 일은 취미로 해라.... 지금은 ..

개발이야기 2019.09.05

[C/C++ 자료구조] 양방향 연결리스트와 C++ STL <list>

저번 시간은 연결리스트와 단방향 연결리스트에 대해 알아보고 구현해보았습니다. 오늘은 양방향 연결리스트와 C++ STL에 들어있는 함수들을 알아보고자 합니다. #양방향 연결리스트 양방향연결리스트의 특징은 head와 tail 노드를 사용하여 이 리스트를 관리하는 특징을 가지고 있습니다. 또한 한 노드가 전 노드 혹은 후 노드와 연결되어 있다는 점이 특징입니다. #include #include typedef struct Node { int data; struct Node *prev; struct Node *next; } Node; Node *head, *tail; void insert(int data){ Node* node = (Node*) malloc(sizeof(Node)); node->data = dat..

코딩스터디 2019.09.04

Big-O 빅오 표기법

알고리즘의 시간 복잡도를 표기하기 위해 Big-O 표기법을 사용하여 이를 정리하고자 합니다. #O(1) : constant time 입력 데이터의 크기와 관계 없이 일정한 시간 #O(n) : linear time 입력 데이터의 크기와 비례해 시간 ex) for문 1개 #O(n^2) : quadratic time 입력 데이터의 크기의 제곱에 비례해 시간 ex) for문 2개 #O(nm) : quadratic time O(n^2)에서 m이 n보다 작으면 보다 더 적은 시간이 걸리지만 m이 n보다 같어나 큰 순간 같거나 많은 시간 #O(n^3) : polymomial or cubic time 입력 데이터의 크기의 세제곱에 비례해 시간 ex) for문 3개 #O(2^n) : exponential time 함수를..

코딩스터디 2019.09.01

[C/C++자료구조] 연결리스트

연결리스트에 대해 알아보려 합니다. 연결리스트로는 크게 배열, 단방향, 양방향리스트로 구현 가능한데요. 각각의 구현과 장단점을 정리해보고자 합니다. #연결 리스트란 메모장에 할 일이나 쇼핑목록을 나열하듯 데이터를 저장하는 자료구조이며, 이들을 연결해 삽입과 삭제, 탐색을 할 수 있습니다. #배열 리스트 배열 리스트의 장점은 어느 위치에 저장되어 있는지 index(위치)를 알고 있다면 바로 접근해서 데이터를 가져올 수 있지만, 배열의 크기를 처음에 지정해야 하므로, 적정한 배열의 크기를 정해야 하는 단점이 있습니다. 또한 삭제나 삽입을 할 때 모든 배열을 앞으로나 뒤로 방문하여 밀거나 당겨야 하는 상황에 불필요한 메모리 낭비나, 탐색을 할 수 있습니다. #include int arr[10]; int cnt..

코딩스터디 2019.08.30

서버와 클라이언트 만들기

https://www.fastcampus.co.kr 패스트캠퍼스 | 커리어 성장을 위한 최고의 실무교육 아카데미 커리어 성장을 위한 최고의 실무교육 아카데미 www.fastcampus.co.kr 위에 가면 더 좋은 강좌들이 많이 개설되어 있습니다. 개인적으로 사서 듣고있는데 도움이 많이 되는거 같아서 그 중 흥미로운 부분을 하나 발췌해서 소개해드리고자 합니다. 코드들이 전부 개인적인 소유를 갖고 있을 수 있어 업로드를 안하지만, 이 실습 코드 같은 경우에 Git에 연동하여 공유하는 실습까지 함께 진 행 했을 뿐만 아니라 '이런것도 배워보고 싶었는데....!'하시는 분들(저같은 경우도 포함) 에게 접근성을 높일 수 있을 거 같아 포스트합니다. 한번 가셔서 저는 '컴퓨터공학 올인원 패키지'를 수강하고 있는데..

코딩스터디 2019.06.02

1231. [S/W 문제해결 기본] 9일차 - 중위순회

이 문제는 swexpertacademy P.1231 문제임을 알립니다. 또한 패스트 캠퍼스 수강자이며 안경잡이개발자 나동빈님의 강의를 보고 활용하여 푼 것이므로 안경잡이 개발자 님의 블로그를 링크 할테니 많이 가서 좋은 배움 얻으시길 바랍니다. https://blog.naver.com/ndb796 안경잡이개발자 : 네이버 블로그 2017 대한민국 인재상 SW 마에스트로 9기 BoB 6기 보안컨설팅 트랙 에듀캐스트 Unity 강사 ndb796@naver.com 카카오톡 : blow796 blog.naver.com 중위 순회 알고리즘을 가져와 풀었는데 문제를 보면 주어진 node의 갯수에 따라 몇번 째 번호에 이를 시 입력을 각각 다르게 받으며 node의 갯수가 짝수인지 홀수인지 또한 구분..

코딩스터디 2019.05.15

1226. [S/W 문제해결 기본] 7일차 - 미로1

본 문제는 swexpertacademy D4. 1226 문제이며 히하15님의 코드를 보고 배웠음을 알리며 히하15님이 이 글을 본다면 감사의 의미를 전하고 싶으니 쪽지 부탁드립니다. 미로의 기본적인 문제이며 미로를 입력받고 출발점과 끝점을 저장한다. 그 후 지나온 길을 표시하고 갈 수 있는 길에 대해 상하좌우를 탐색하며 미로를 찾는다. #include using namespace std; char maze[16][16]; int visit[16][16]; int dx[4] = {0,0,-1,1}; int dy[4] = {-1,1,0,0}; int entry_x, entry_y, exit_x, exit_y; int sol; bool check(int y, int x){ if(y>=0&&y=0&&x

코딩스터디 2019.05.13

6808. 규영이와 인영이의 카드게임

이 문제는 swexpertacademy D3 P.6808임을 알립니다. 하단 URL참조 인영이와 규영이의 카드를 입력받고 recursion을 이용해 순열을 비교하면 된다. 이 때 순열의 조건으로 경우를 줄이지 않으면 runtime이 초과될 수 있으니 조심한다. #include using namespace std; int iy[9]; int ky[9]; bool checkArr[9]; int win; void permutation(int idx, int ky_score, int iy_score){ if(idx==9){ if(ky_score>iy_score) { win++; return; } return; } for(int i=0; iiy[i]) permutation(idx+1, ky_score+(ky[id..

코딩스터디 2019.05.13

1206. [S/W 문제해결 기본] 1일차 - View

본 문제는 swexpertacademy D3 1206번 문제임을 알립니다. 하단 URL 참조 각 층을 입력받고 0층이 입력될 때는 계속 진행하고 층이 입력되면 그 층까지 모두 2차원 배열에 1을 넣는다. 그 후 각 경우에 count를 세는데 if(arr[i-1][j]==0&&arr[i-2][j]==0&&arr[i+1][j]==0&&arr[i+2][j]==0) 이 조건에 맞으면 count를 올린다. #include #include using namespace std; int main(){ for(int t=1; t

코딩스터디 2019.05.13

7102. 준홍이의 카드놀이

이 문제는 swexpertacademy의 7102번 문제임을 알립니다. N 과 M이 각 케이스마다 입력되는데 1~N, 1~M의 숫자를 더했을 때 확률이 가장 높은 숫자를 출력하므로 배열을 N+M+1칸으로 선언한다. 그 이유는 두개의 숫자를 더했을 때 나온 수의 배열 칸에 count++를 할 것인데 N, M, 을 2,3이라고 했을 때 arr[5]으로 선언하면 arr[0]~arr[4]까지 5개가 나오므로 편의를 위해 +1을 해준다. 그 후 가장 많이 등장한 숫자(들)을 출력한다. #include #include using namespace std; int main(void){ int T; cin>>T; for(int i=1; i

코딩스터디 2019.05.12

Stack 배열로 구현 / C

https://book.naver.com/bookdb/book_detail.nhn?bid=6068296 C언어로 쉽게 풀어쓴 자료구조 이 책은 도입부에서부터 C언어에서 시행착오를 겪는 자료 구조와 알고리즘에 대한 정의를 그림을 통해 충분히 설명하면서 자바 애플릿으로 작성된 가상 실습 소프트웨어로 개념을 확실히 잡아주고 있다. 더 나아가 유사코드로 작성된 알고리즘을 학습하고 최종적으로 C언어로 구현된 내용을 학습할 수 있도록 구성하고 있어, 자료 구조와 알고리즘의 개념의 이해는 물론이고 C언어로 구현된 내용을 통해 C언어를 쉽게 이해할 수 있다. book.naver.com C언어로 쉽게 풀어쓴 자료구조를 참고한 내용입니다. #include #define MAX_STACK_SIZE 100 typedef in..

코딩스터디 2019.05.07

1222. [S/W 문제해결 기본] 6일차 - 계산기1

문자열의 길이가 주어지고 후위연산을 하는 문제인데, 문자열을 가져와 이를 다뤄야한다. 길이가 주어져 길이까지 하나씩 탐색을 하는데 문자열은 아스키로 변환을 해서 다뤄줘야한다. +는 아스키코드로 43이고 각 숫자는 -48을 하면 원하는 숫자를 얻을 수 있으므로 다음과 같이 설계했다. #include #include using namespace std; int main(){ for(int t=1; t

코딩스터디 2019.05.05

1218. [S/W 문제해결 기본] 4일차 - 괄호 짝짓기

https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV14eWb6AAkCFAYD&categoryId=AV14eWb6AAkCFAYD&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com 본 문제는 swexpertacademy D4 P.1218에 대한 문제 임을 알립니다. 괄호 4종류 () [] {} 로 이루어진 문자열이 올바른 괄호인지 찾는 문제입니다. 스택을 사용하여 풀었으며, 닫는 괄호가 나올 때 그 괄호와 짝이 맞으면 Pop을 하고 짝이 맞지 않으면 break 4종류의 닫는 괄호가 나오지..

코딩스터디 2019.05.05

1210. [S/W 문제해결 기본] 2일차 - Ladder1

본 문제는 swexpertacademy의 D4 1210문제임을 알립니다 처음 설계한 SudoCode에서는 100개의 시작점을 모두 탐색하여 끝점인 배열 2를 찾으면 break하는 방법으로 진행했지만, 10개의 테스트케이스를 다 마치기도 전에 Runtime error가 발생했기 때문에 경우의 수를 줄이는 방안으로 끝점을 탐색하고 거기에 대응하는 시작점을 출력합니다. #include using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int arr[102][102]={{0,},}; int d[2]={1,-1}; for(int t=0; t>T; cout

코딩스터디 2019.05.05

[아이맥 리뷰] 퓨전드라이브? Fusion Drive!

[아이맥 리뷰] 퓨전드라이브? Fusion Drive! 안녕하세요. 애플앤마블입니다.키워드와 유입로그를 찬찬히 살펴보니 퓨전드라이브(Fusion Dive)에 대해서 상당히 많은 관심이 있는걸로 보여요.저도 맥을 살 때 정말 퓨전드라이브 이놈의 '퓨전드라이브'때문에 고민을 많이 했었거든요.퓨전드라이브가 HDD랑 다를게 뭐냐, 돈 들여서 SSD사자는게 사실 대부분의 의견입니다.그럼에도 불구하고 저는 '데스크탑'이라면 높은 용량이 최고라는 마음과 조그만한 SSD에 의존해서 버텨보자 라는 마음으로 샀습니다.배송기간도 상당히 길었구요 SSD는 말이죠. 비싸기도 했고. 구매를 하고 난 후 저는 어떻게 느끼면서 쓰고 있을까요?결론부터 말하자면 정말 '대만족'입니다 부팅시간? 부팅시간이 굉장히 느리다. SSD는 5초면..

IT 리뷰 2017.08.17

[앱 리뷰] 히트맨스나이퍼 아이폰 게임 추천 유료어플

[앱 리뷰] 히트맨스나이퍼 아이폰 게임 추천 유료어플 안녕하세요. 애플앤마블입니다. 오늘은 아이폰 유료 게임 순위 6위를 기록하고 있는 '히트맨스나이퍼(Hitman Sniper)'에 대해서 리뷰해보려고 합니다. 이 게임은 1인칭 스나이퍼가 되어서 미션을 수행하는 게임인데요. 스나이퍼 답게 의뢰받은 사람들을 조준하고 사살하는 테마를 가지고 수행해 나가는 어플입니다. 현재 1달러 정도의 요금, 우리나라 돈으로는 1700원 정도의 가격으로 결재되는 이 어플, 한 번 함께 리뷰해 볼까요? 우선 플레이 영상입니다. 총을 사고 업그레이드를 하면서 게임이 진행되는데 상당히 디테일한 스나이핑이 가능합니다. 줌을 늘리거나 줄일 수 있고 숨쉬는 것도 반영이 되기 때문에 숨참기, 반동도 느껴질 뿐만 아니라 거리까지 계산해야..

앱 리뷰 2017.08.16
반응형
LIST