본문 바로가기

C17

[C++] 백준 1181번 단어정렬 문제풀이 문제 링크 백준 1181번 단어정렬 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1≤N≤20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 간단한 심화 정렬 문제이다. string으로 단어를 받고 sort 함수를 이용해 정렬을 하는데 compare 함수를 따로 길이순으로 반환을 한 후에 길이가 같다면 알바벳순으로 오름자순 정렬을 하는 형식이다. string size 함수를 이용해 길이를 파악하고 길이가 같다면 단순 비교를 통해 함수를 만들었다. 정렬을 공부하는 사람이라면 도움이 많이 될 것이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 .. 2019. 1. 24.
[C++] 코드그라운드 버스타기 문제풀이 버스타기 N 명의 바둑 선수들이 몇 대의 버스에 나누어 타려고 한다. 선수들은 1부터 N까지 번호가 붙어 있다. 각 선수는 실력 값을 가지고 있다. 선수 i번의 실력 값을 Ai라고 하자. 선수들 간의 경쟁심 때문에 두 선수의 실력 차이가 K이하인 경우는 같은 버스에 타지 않는다고 한다. 즉, 두 선수 i번과 j번의 (i≠j) 실력이 |Ai−Aj|≤K를 만족하는 경우 같은 버스에 타지 않는 것이다. 한 대의 버스에 탈 수 있는 인원은 무제한이라고 한다. 철수는 선수들의 실력을 입력으로 받아서 필요한 버스 수의 최소값을 계산하려고 한다. 여러 선수들이 서로 같은 버스를 타지 않는 관계가 매우 복잡해 보이지만, 철수는 아주 간단한 계산 방법이 있다는 것을 알게 되었다. 철수를 도와서 버스 수의 최소값을 계산하.. 2019. 1. 10.
[Error, VS] "const char *" 형식의 값을 사용하여 "char *" 형식의 엔터티를 초기화할 수 없습니다. 1 char* window_name = "Threshold Demo"; cs 위와 같은 코드가 비주얼 스튜디오 2015에서는 잘 되는데 2017부터는 오류가 발생한다. 해결책은 1. 아래와 같이 const를 붙이거나 1 const char* window_name="Threshold Demo"; cs 2. 프로젝트 > 속성 > C/C++ > 언어 > 준수모드 > 아니오 로 변경해주는 방법이다. 좀 구체적으로 이유를 찾아보니 비주얼 스튜디오에는 속성에 준수모드라는게 있는데 이게 2017부터 기본적으로 "예(/permissive-)" 상태로 설정되어 있기 때문이다. 위의 준수모드를 아니오로 바꾸고 적용해주면 문제없이 실행된다. 2018. 12. 28.
[C] strtok 문자열 자르기 먼저 특정 문자를 기준으로 문자열을 자르는 방법입니다. 문자열을 자르는 함수는 strtok 이며 함수 이름은 문자열을 조각(token)으로 나누다(string tokenize)에서 따왔습니다(string.h 헤더 파일에 선언되어 있습니다).strtok(대상문자열, 기준문자);char *strtok(char *_String, char const *_Delimiter);자른 문자열을 반환, 더 이상 자를 문자열이 없으면 NULL을 반환다음 내용을 소스 코드 편집 창에 입력한 뒤 실행해보세요.string_tokenize_array.c#define _CRT_SECURE_NO_WARNINGS // strtok 보안 경고로 인한 컴파일 에러 방지 #include #include // strtok 함수가 선언된 헤더.. 2018. 10. 21.
Microsoft Visual C++ 프로그래밍 자료형 총정리 자료형크기범위비고char signed char1바이트, 8비트-128~127 unsigned char1바이트, 8비트0~255 short short int2바이트, 16비트-32,768~32,767int 생략 가능unsigned short unsigned short int2바이트, 16비트0~65,535int 생략 가능int signed int4바이트, 32비트-2,147,483,648~ 2,147,483,647 unsigned unsigned int4바이트, 32비트0~4,294,967,295int 생략 가능long long int signed long signed long int4바이트, 32비트-2,147,483,648~ 2,147,483,647int 생략 가능unsigned long unsigne.. 2018. 7. 23.