728x90
반응형

분류 전체보기

[Bronze III] ACM 호텔 - 10250 문제 링크 성능 요약 메모리: 31120 KB, 시간: 44 ms 분류 사칙연산, 구현, 수학 제출 일자 2024년 2월 20일 15:45:12 문제 설명 ACM 호텔 매니저 지우는 손님이 도착하는 대로 빈 방을 배정하고 있다. 고객 설문조사에 따르면 손님들은 호텔 정문으로부터 걸어서 가장 짧은 거리에 있는 방을 선호한다고 한다. 여러분은 지우를 도와 줄 프로그램을 작성하고자 한다. 즉 설문조사 결과 대로 호텔 정문으로부터 걷는 거리가 가장 짧도록 방을 배정하는 프로그램을 작성하고자 한다. 문제를 단순화하기 위해서 호텔은 직사각형 모양이라고 가정하자. 각 층에 W 개의 방이 있는 H 층 건물이라고 가정하자 (1 ≤ H, W ≤ 99). 그리고 엘리베이터는..
· CS50 정리
검색 알고리즘 배열 한 자료형의 여러값들이 메모리상에 모여있는 구조 컴퓨터는 값에 접근할 때 인덱스( a[0]) 한개씩 확인 선형 검색(Linear Search) 배열의 인덱스 처음부터 하나씩 차례대로 검색하는 알고리즘 데이터의 개수가 늘어날수록 시간이 오래 걸리는 단점이 있음 최대 검색 횟수 : n회 (=데이터 수) → 끝까지 발견되지 않는 경우 평균 검색 횟수 : n / 2회 검색량 O(N) 이진 검색(Binary Search) 원하는 값을 찾을 때까지 검색할 데이터의 범위를 반씩 줄여가며 찾는 알고리즘 선형 검색과는 다르게 특정 기준에 따라 오름차순 또는 내림차순으로 정렬된 리스트를 받아야 함 최대 검색 횟수 : (log2n)+1 평균 검색 횟수 : log2n 알고리즘 표기법 Big-O 표기법 : ..
· CS50 정리
컴파일링 컴파일링은 4단계로 나눌 수 있다.(전처리 → 컴파일 → 어셈블 → 링크) 전처리(Preprocessing) #으로 시작되는 C 소스 코드는 전처리기에게 실질적인 컴파일이 이루어지기 전에 무언가를 실행하라고 알려줌 #include #include 컴파일(Compiling) 전처리한 소스코드를 어셈블리어라는 저수준 프로그래밍 언어로 컴파일함 (컴퓨터가 이해하도록 하기 위해서) 어셈블(Assembling) 어셈블리 코드를 CPU가 이해할 수 있도록 오브젝트 코드로 변환함 (연속된 0과 1로 이루어진 명령어 형태) 링크(Linking) 여러 개의 다른 오브젝트 코드 파일을 실행 가능한 하나의 오브젝트 코드 파일로 합쳐줌 디버깅 버그(Bug) 코드에 들어있는 오류 디버깅(Debugging) 디버거 프로..
· CS50 정리
C 기초 #include int main(void) { printf("hello, world\n"); } #include : 작성하고 있는 코드에 오른쪽에 있는 코드를 포함시키겠다. (standard input output) : h는 header를 의미 / 표준입출력에 관한 내용을 담고있다. (파일입출력 / 콘솔화면 입출력 / 파일구조체 / 문자입출력 등등) ìnt : 함수의 반환값이 정수형 main : C언어가 동작할 때 시작점이 되는 함수 (void) : 인자로 아무것도 받지 않는 것을 의미 printf() : 문자열을 화면에 출력하는 함수 / 문자열을 “”(큰따옴표) 안에 작성 💡 모든 명령어 끝에는 세미 콜론(;) 작성 컴파일러 우리가 작성한 코드 : 소스코드 컴퓨터가 이하하는 코드 : 머신코드(..
· CS50 정리
CS50 1강[컴퓨팅 사고] 2진법(Binary) 0과 1로 숫자를 표현(글자, 사진, 영상, 소리 등을 저장) 비트(Binary Digit, bit) 0 또는 1 / 참 또는 거짓 (컴퓨터 용량이나 프로그램 처리능력의 최소 단위) 트랜지스터(Transfer Resistor) : 연산을 수행하는 가장 기본이 되는 소자(1비트) / CPU, 메모리, 그래픽 카드 등에 사용 읽는 방법 : 오른쪽부터 읽음 LSB(Least Significant Bit) : 가장 작은 비트 / 가장 오른쪽에 있는 첫번째 비트 (예시 : 01100011 LSB는 1이다) MSB(Most Significant Bit) : 가장 큰 비트 / 가장 왼쪽에 있는 첫번째 비트 (예시 : 01100011 MSB는 1이다)(부호비트라고도 부..
[Silver IV] 카드2 - 2164 문제 링크 성능 요약 메모리: 50936 KB, 시간: 140 ms 분류 자료 구조, 큐 제출 일자 2024년 2월 19일 16:06:59 문제 설명 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 한 장 남을 때까지 반복하게 된다. 우선, 제일 위에 있는 카드를 바닥에 버린다. 그 다음, 제일 위에 있는 카드를 제일 아래에 있는 카드 밑으로 옮긴다. 예를 들어 N=4인 경우를 생각해 보자. 카드는 제일 위에서부터 1234 의 순서로 놓여있다. 1을 버리면 234가 남는다. 여기서 2를 제일 아래로 옮기면 342가 ..
[Silver V] 그룹 단어 체커 - 1316 문제 링크 성능 요약 메모리: 31120 KB, 시간: 40 ms 분류 구현, 문자열 제출 일자 2024년 2월 19일 16:30:41 문제 설명 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때문에 그룹 단어이지만, aabbbccb는 b가 떨어져서 나타나기 때문에 그룹 단어가 아니다. 단어 N개를 입력으로 받아 그룹 단어의 개수를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 단어의 개수 N이 들어온다. N은 100보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 단어가 들어온다..
728x90
반응형
개발찾아 삼만리
'분류 전체보기' 카테고리의 글 목록 (20 Page)