[회고] 신입 iOS 개발자가 되기까지 feat. 카카오 자세히보기
반응형

💻 CS 193

[알고리즘 연습] 석차 구하기 (by C++)

석차 구하기 n 입력. n명의 학생들의 성적이 있다. 이 학생들의 성적을 입력받고, 학생들의 등수를 배열 순서대로 출력하라. ex. 90 85 92 95 90 입력 => 3 5 2 1 3 출력 같은 점수의 학생은 높은 등수로 동일하게 처리한다. 단, 그보다 점수가 낮은 학생은 동일한 점수를 가진 학생들만큼 등수가 내려간다. (1등이 3명일 경우 그 다음은 4등) 풀이 #include #include using namespace std; int main() { int i, j, n; cin >> n; vector a(n); vector b(n); for (i=0; i> a[i]; b[i] = 1; } for (i=0; i

[알고리즘 연습] 온도의 최대값 (by C++)

온도의 최대값 매일 일정한 시간에 온도를 측정하여 기록한다고 하자. 정수 n 입력받음. 정수 k 입력받음. n일동안 입력된 온도들이 있다. 이 때 k일동안 연속하여 온도를 합쳤을 때 그 수치가 최대가 되는 값을 찾아라. 최대값을 출력함. 풀이 #include #include using namespace std; int main() { int i, n, k, sum=0, max; cin >> n >> k; vector a(n); for (i=0; i> a[i]; } for (i=0; i

Vim 튜토리얼

Vim이란? 유닉스 계열 운영체제의 CLI 환경에서 사용하는 대표적인 텍스트 에디터 마우스없이 키보드로만 사용해야한다. UNIX에서는 이러한 Vim을 다룰줄 모르면, 기초적인 텍스트파일도 작성할 수 없다. vi improve의 줄임말이다. vim command를 입력해 사용한다. Vim의 4가지 모드 사용자가 같은 키를 눌러도, 모드가 무엇인지에 따라 다른 기능이 작동된다. 일반 모드, 입력 모드, 비주얼 모드, 명령 모드, 총 4가지가 존재한다. 일반 모드가 모든 모드로 이동할 수 있는 기본 모드이다. 일반 모드를 거치지 않고서는 다른 모드로 변경할 수 없다. 다른 모드에서 일반모드로는 ESC키를 통해 변경한다. 모드 변경 기능 일반 모드 (Normal Mode) ESC 커서이동, 텍스트 붙여넣기, 텍..

자주 사용되는 linux command 모음

Frequently used command man : manual, command에 대한 메뉴얼 출력 clear : 화면 정리 pwd : print working directory, 현재 경로 출력 cd : change directory, 현재 경로 이동 (~ : 홈디렉토리, / : 루트디렉토리, - : 이전접근디렉토리, . : 현재, .. : 이전) ls : list, 현재 디렉토리의 파일 리스트업 (-l : 자세한 정보, -d : 디렉토리 정보확인) mv : move, 파일이동 혹은 이름변경 (-i : 덮어쓰기 확인) cp : copy and paste, 파일 복사 (-i : 덮어쓰기 확인, -r : 재귀적 적용) rm : romove, 파일 삭제 (-i : 제거 확인, -r : 재귀적 적용) cat..

man command 살펴보기

man command man command는 UNIX에서 특정 command에 대한 메뉴얼을 불러오고 싶을 때 사용하는 command이다. man [모르는 커맨드] 맨 위에는 섹션과 매뉴얼 이름이 나온다. 공식 매뉴얼의 전체 내용 중 몇 번째 섹션에 해당하는 곳인지 알려준다. NAME : 커맨드의 이름과 커맨드에 대한 간단한 설명 SYNOPSIS : 어떻게 커맨드를 실행할 수 있는지 사용 가능한 형식을 보여줌. 대괄호가 포함된 것은 옵션, 그리고 대괄호 없는 것들이 인자. DESCRIPTION : 커맨드에 대한 좀더 자세한 설명과 각 옵션에 대한 설명 cf. 메뉴얼 살펴보기 화살표 : 아래 위 이동 스페이스바 : 한 페이지 후로 이동 b : 한 페이지 전으로 이동 g : 처음으로 이동 G : 끝으로 이동..

WSL (Windows Subsystem for Linux) 사용하기

이하의 내용은 노마드코더님의 무료공개 수업인 '개발자를 위한 윈도우 셋업'(https://nomadcoders.co/windows-setup-for-developers/lobby) 내용 일부를 정리한 것입니다. 개인 정리의 목적이 더 크니, 학습을 위해선 노마드코더님의 강의를 수강하는 것을 추천합니다. WSL(Windows Subsystem for Linux) WSL은 리눅스의 네이티브 바이너리를 윈도우 환경에서 돌아가도록 만들어낸 시스템이다. 즉, 윈도우 환경에서 가상머신없이 리눅스 배포판 버전을 설치해 사용할 수 있도록 해준다. 이를 위해선 Window에 Linux용 Windows 하위 시스템 옵션이 설치되어 있어야한다. Linux용 Windows 하위 시스템 옵션을 사용하기 위해 아래 명령어를 Po..

유닉스 시작하기

CLI 환경이란 Command Line Interface의 약자, 명령어를 기반으로 주로 검은 화면에서 돌아가는 시스템. 우리에게 익숙한 GUI(Graphical User Interface)와 다르게 키보드로 command만 입력해서 작동한다. CLI는 핵심기능만 작동하면된다는 점에서 성능이 가볍고, 클릭이 아닌 명령어를 기반으로 작동하기 때문에 단순하고 정확한 처리가 가능하다. 개발을 하다보면 이러한 CLI 환경에서 작업을 해야하는 경우가 많다. 대표적으로 UNIX가 그것이다. 리눅스, 우분투, 레드헷, 크롬OS, 안드로이드, IOS 등의 전신이 UNIX이다. 따라서 UNIX를 어느정도 익히면 나머지 OS에도 쉽게 적응할 수 있다. 유닉스와 유사유닉스 유닉스는 대부분 c언어로 작성되어 다른 컴퓨터에 적..

[알고리즘 연습] 요세푸스 문제

https://www.acmicpc.net/problem/1158 풀이 n, k = map(int, input().split()) num_list = list(range(1,n+1)) idx = k - 1 print("") 리스트를 활용한 풀이이다. k번째 사람은 인덱스 상으로는 k - 1번째 사람이므로 처음 인덱스를 k -1로 부여한다. 이 후에도 k - 1씩 더하되, 리스트의 전체 길이보다 커지지 않도록 mod 연산 처리를 해준다. from collections import deque n, k = map(int, input().split()) num_list = deque(range(1, n+1)) result_str = "" while len(num_list) > 0: num_list.rotate(..

[알고리즘 연습] 두 부분집합의 균형 맞추기

두 부분집합의 균형 맞추기 사용자로부터 집합 data를 입력받는다 입력받은 집합 data를 A, B 둘로 나눈다. A와 B의 개수는 맘대로 정할 수 있다. (5개의 집합을 3개, 2개로 나누든 1개, 4개로 나누든 상관없다는 뜻이다.) A와 B의 요소도 맘대로 정할 수 있다. ([1,2,3,4,5] 집합을 [1,3,5]와 [2,4]로 나누는 것도 가능하다.) 단 A와 B를 합쳤을 때는 반드시 data의 요소를 모두 가져야 한다. 이 때 'A요소들의 합 - B 요소들의 합' 절댓값의 최솟값을 찾아라. (A, B를 찾을 필요는 없다.) 풀이 def getPowerSet(n,k): if n == k: return [[k]] basic = k result = [[basic]] k += 1 while (n >= ..

[알고리즘 연습] 멱집합

멱집합 구하기 숫자 n을 입력받고 1~n의 수를 원소로 가지는 집합의 멱집합을 구한다. 멱집합를 하나씩 출력한다. 단, 출력 순서는 [1], [1,2], [1,2,3], [1,3], [2], [2,3], [3] 과 같은 패턴을 가져야 한다. 풀이 def getPowerSet(n,k): if n == k: return [[k]] basic = k result = [[basic]] k += 1 while (n >= k): for i in getPowerSet(n,k): result.append([basic] + i) k += 1 return result def powerSet(n) : result = [] for i in range(1,n+1): result += getPowerSet(n,i) return ..

반응형