본문 바로가기

Study/Algorithm9

COS PRO 1급 C) 해밍 거리 구하기 해밍 거리란 같은 길이를 가진 2개의 문자열에서 같은 위치에 있지만 서로 다른 문자의 개수를 뜻한다. 예) 두 2진수 문자열이 "10010"과 "110"이라면, 먼저 두 문자열의 자릿수를 맞추기 위해 "110" 옆에 0 두개를 채워 "00110"으로 만들어 준다. 1 0 0 1 0 0 0 1 1 0 두 문자열은 첫 번째와 세 번째 문자가 서로 다르므로 해밍 거리는 2이다. 두 2진수 문자열 binaryA, binaryB의 해밍 거리를 구하려 한다. 1. 길이가 더 긴 2진수 문자열의 길이를 구한다. 2. 첫 번째 2진수 문자열의 길이가 더 짧다면 문자열의 앞에 0을 채워넣어 길이를 맞춰준다. 3. 두 번째 2진수 문자열의 길이가 더 짧다면 문자열의 앞에 0을 채워넣어 길이를 맞춰준다. 4. 길이가 같은 .. 2022. 5. 18.
COS PRO 1급 C) k 등을 한 학생 찾기 문제 설명 학생들의 이름과 시험 점수가 주어질 때, K등을 한 학생의 이름을 찾으려 합니다. (단, 시험 점수가 같은 학생은 없다고 가정) 구조체 정의 typedef struct Student{ char name[20]; int score; }Student; 1. 학생의 이름과 시험 점수로 구성된 구조체 배열을 생성 및 초기화한다. 2. 생성된 구조체 배열을 시험 점수의 내림차순으로 정렬한다. 3. 정렬된 구조체 배열에서 K - 1번째에 있는 학생의 이름을 return 한다. names : 학생들의 이름이 순서대로 들어있는 배열 names_len : names의 길이 scores : 학생들의 시험 점수가 순서대로 들어있는 배열 scores_len : scores의 길이 등수를 나타내는 자연수 K가 매개변.. 2022. 5. 18.
[C언어] char[] 과 char * https://ddongwon.tistory.com/2 위 블로그 내용을 옮겨왔다. char s1[100] 으로 설정된 s1 라는 변수에 "hello" 문자열로 초기화 한다면, h, e, l, l, o, \0 이 6개를 제외한 94개의 칸은 낭비되는 것이다. 이 문제점을 해결해주는 것이 char* 이다. char *s2 = "hello" 로 초기화하면 s2에는 hello라는 문자열이 메모리의 첫 주소값이 저장된다. #include int main() { char *s2 = "hello"; print("%d", s2); } s2를 int형(%d)으로 출력하면 4210688 위와 같은 결과값이 나온다. hello라는 문자열이 저장된 메모리 주소값이 출력된다. 즉, hello라는 문자열이 저장된 메모리 주소값.. 2022. 5. 17.
프로그래머스 mysql [상위 n개 레코드] ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAME TYPE NULLABLE ANIMAL_ID VARCHAR(N) FALSE ANIMAL_TYPE VARCHAR(N) FALSE DATETIME DATETIME FALSE INTAKE_CONDITION VARCHAR(N) FALSE NAME VARCHAR(N) TRUE SEX_UPON_INTAKE VARCHAR(N) FALSE.. 2021. 12. 10.