본문 바로가기

전체 글78

[C/C++] memset (string.h에 선언되어 있음.) memset(포인터, 설정한 값, 크기); void *memset(void *_Dst, int _Val, size_t _Size); 값 설정이 끝난 포인터를 반환 memset 함수는 메모리의 내용을 원하는 크기만큼 특정값으로 설정할 수 있다. 인자 _Dst 설정한 포인터의 주소로, void* 형으로 변환되어서 전달된다. _Val 설정한 값으로, int 형 데이터를 인자로 받는다. _Size 설정할 크기, 포인터부터 몇 바이트인지를 나타낸다. 리턴값 _Dst 이 리턴된다. 예시1 #include #include #include int main() { char* ptr = (char*)malloc(sizeof(char) * 10); memset(ptr, 65, sizeo.. 2019. 11. 1.
[C/C++] memcpy (string.h에 선언되어 있음.) memcpy(목적지포인터, 원본포인터, 크기); void *memcpy(void *_Dst, void const *_Src, size_t _Size); 목적지 포인터를 반환 memcpy 함수는 메모리의 내용을 다른 곳으로 복사하는 함수이다. 인자 _Dst 데이터가 복사될 곳의 주소로, void* 형으로 변환 되어서 전달된다. _Src 복사할 데이터들의 주소로, void* 형으로 변환 되어서 전달된다. _Size 복사할 데이터의 바이트 수 이다. 리턴값 _Dst 이 리턴된다. 예시 #include #include int main() { int arr1[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; int arr2[10] = { 0, }; fo.. 2019. 11. 1.
[BOJ 1629] 곱셈 https://www.acmicpc.net/problem/1629 불러오는 중입니다... 위 문제는 주어진 A, B, C에 대해 A^B % C를 구하는 문제이다. 간단하게 반복문을 B번 돌리면서 결과값에 A를 곱하고 C로 나눈 나머지를 구하면 될 거같은 문제이다. 바로 아래 코드처럼 말이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include #define ull unsigned long long int main() { int a,b,c; scanf("%d %d %d", &a,&b,&c); ull result = 1; for(int i = 0; i 2019. 3. 17.
[BOJ 1964] 오각형, 오각형, 오각형… https://www.acmicpc.net/problem/1964 1964번: 오각형, 오각형, 오각형… 첫째 줄에 N(1≤N≤10,000,000)이 주어진다. www.acmicpc.net 위 문제는 N단계 후 오각형의 점이 몇 개인지 알아내는 문제이다. 위 문제를 풀기 위해 저는 두 가지 방법으로 나누어 생각했습니다. ---------------------------------------------------------------------- 1). 외곽의 점은 몇 개인가 2). 그 외의 점들, 즉 안쪽에 있는 오각형의 점들은 몇 개인가. ---------------------------------------------------------------------- 1)번의 경우 각 단계마다 오각형의 각.. 2019. 3. 17.
에라토스테네스의 체(Eratosthenes' sieve) 에라토스테네스의 체(Eratosthenes' sieve) 1부터 N사이의 모든 소수와 소수가 아닌 수를 찾는 방법이다. 소수는 1과 자기 자신만을 약수로 가지는 수이다. 쉽게 말해 소수는 자기 자신과 1로 밖에 못 나누는 수이다. 이러한 원리를 이용해 배수를 지우면서 소수가 아닌 수를 배제해 나가는 방법이다. 즉, 1)--- 2의 배수인 4, 6, 8, 10, 12..........지움 3의 배수이면서 지워지지 않은 수인 9, 15, 21.......지움 . . . . . . 2)--- 이러한 과정을 반복하며 소수가 아닌 수를 지워나간 후 마지막까지 지워지지 않은 수인 소수를 찾는 방법이다. ----- 예를 들어 1 ~ 50 사이의 소수를 찾는 다면, 1은 소수가 아니므로 먼저 배제하고 2의 배수들을 배.. 2019. 3. 17.