별의 공부 블로그 🧑🏻‍💻

🗒️ 배열 (9)

728x90
  1. 2022.10.24 [BOJ2566][C++] 최댓값

    문제 과 같이 9×9 격자판에 쓰여진 81개의 자연수 또는 0이 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 행 몇 열에 위치한 수인지 구하는 프로그램을 작성하시오. 예를 들어, 다음과 같이 81개의 수가 주어지면 1열 2열 3열 4열 5열 6열 7열 8열 9열 1행 3 23 85 34 17 74 25 52 65 2행 10 7 39 42 88 52 14 72 63 3행 87 42 18 78 53 45 18 84 53 4행 34 28 64 85 12 16 75 36 55 5행 21 77 45 35 28 75 90 76 1 6행 25 87 65 15 28 11 37 28 74 7행 65 27 75 41 7 89 78 64 39 8행 47 47 70 45 23 65 3 41 44 9행 87 13 82 ..

  2. 2022.04.13 [NumPy] 배열 객체 관리와 연산

    배열 객체 관리와 연산 넘파이는 수백만 개의 수치 데이터를 빠르게 처리함으로써 파이썬의 과학 계산을 빠르게 처리하는 라이브러리이다. 넘파이의 N차원 배열은 데이터를 빠르게 처리할 수 있는 구조이다. 이러한 구조는 요소의 데이터 타입과 크기가 정해져 있으며, 인덱싱으로 빠르게 필드에 접근하고 변경할 수 있는 장점이 있다. 넘파이는 메모리 버퍼에 있는 같은 타입의 매트릭스나 벡터 같은 배열 데이터를 하드웨어 레벨인 저수준 형태로 메모리에 저장하고 처리한다. 또한 넘파이는 같은 크기의 메모리를 할당받고, 연속된 메모리 공간에 존재하는 벡터 연산을 지원한다. 효율적인 인터페이스와 최적화된 관련 함수들, 그리고 최적화된 C 코드를 통해 CPU를 관리하는 벡터화 기능을 사용한 빠른 연산도 지원한다. 뷰와 복사 뷰(..

  3. 2022.04.13 [NumPy] 구조화된 배열

    구조화된 배열 구조화된 배열(Structured Array)은 ndarrays 를 의미한다. ndarrays의 데이터 타입은 시퀀스로 조직화된 단순한 데이터 타입인 필드를 모은 것 필드 : 구조화된 데이터 타입의 각 서브 타입에서 이름(string), 데이터 타입(dtype) 및 제목(title) 예제 >>> arr = np.array([('jin', 25, 67), ('suho', 18, 77)], dtype=[('name', 'U10'), ('age', 'i4'), ('weight', 'f4')]) >>> arr array([('jin', 25, 67.), ('suho', 18, 77.)], dtype=[('name', '

  4. 2021.05.08 배열의 유형 및 선언 방법

    배열의 유형 배열의 유형 정적 배열(Static Array) 선언된 블록이 끝나면 소멸됨. 스택(Stack) 메모리 영역에 할당됨. 함수를 벗어날 때, 자동으로 해제됨. 동적 배열(Dynamic Array) 프로그래머가 생성할 시점과 해제할 시점을 자유롭게 설정할 수 있음. 힙(Heap) 영역에 할당됨. 사용자가 직접 해제하기 전까지 유지됨. 두 가지 유형 중에서 필요에 따라 적절한 배열을 선택하여 사용하면 됨. 두 가지 유형 모두 다양한 연산에서 동일한 성능 을 나타냄. 이러한 배열은 C 언어에서 도입되었기 때문에 C 스타일 배열(C Style Array) 라고도 함. 배열의 선언 방법 정적 배열 int arr[size]; // C, C++ 동적 배열 int* arr = (int*)malloc(size..

  5. 2021.04.02 [코틀린] 배열의 인덱스 찾아내기 예제 (제네릭, 배열 사용)

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 fun find(a: Array, Target: T): Int { for (i in a.indices) { if (a[i] == Target) return i } return -1 } fun main() { val arr1: Array = arrayOf("Apple", "Banana", "Cherry", "Durian") val arr2: Array = arrayOf(1, 2, 3, 4) println("arr.indices ${arr1.indices}") // indices는 배열의 유효 범위 반환 println(find(arr1, "Cherry")) // 요소 C의 인덱스 찾아내기 println(find(arr2, 2)) // 요소 2의..

  6. 2021.01.04 [Project Euler #17][C++] 1부터 1000까지 영어로 썼을 때 사용된 글자의 개수는?

    문제17 : 1부터 1000까지 영어로 썼을 때 사용된 글자의 개수는? 문제 1부터 5까지의 수를 영어로 쓰면 one, two, three, four, five 이고, 각 단어의 길이를 더하면 3 + 3 + 5 + 4 + 4 = 19 이므로 사용된 글자는 모두 19개입니다. 1부터 1,000까지 영어로 썼을 때는 모두 몇 개의 글자를 사용해야 할까요? 참고: 빈 칸이나 하이픈('-')은 셈에서 제외하며, 단어 사이의 and 는 셈에 넣습니다. 예를 들어 342를 영어로 쓰면 three hundred and forty-two 가 되어서 23 글자, 115 = one hundred and fifteen 의 경우에는 20 글자가 됩니다. 문제 해결 방법 100 이상의 수의 경우, 100으로 나누어 떨어지는 수..

  7. 2020.12.26 [Project Euler #11][C++] 20×20 격자에서 연속된 네 수의 곱 중 최댓값

    문제11 : 20×20 격자에서 연속된 네 수의 곱 중 최댓값 문제 아래와 같은 20×20 격자가 있습니다.08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 91 08 49 49 99 40 17 81 18 57 60 87 17 40 98 43 69 48 04 56 62 00 81 49 31 73 55 79 14 29 93 71 40 67 53 88 30 03 49 13 36 65 52 70 95 23 04 60 11 42 69 24 68 56 01 32 56 71 37 02 36 91 22 31 16 71 51 67 63 89 41 92 36 54 22 40 40 28 66 33 13 80 24 47 32 60 99 03 45 02 44 75 33 53 78..

  8. 2020.11.05 [BOJ10773][C++] 제로

    문제나코더 기장 재민이는 동아리 회식을 준비하기 위해서 장부를 관리하는 중이다. 재현이는 재민이를 도와서 돈을 관리하는 중인데, 애석하게도 항상 정신없는 재현이는 돈을 실수로 잘못 부르는 사고를 치기 일쑤였다. 재현이는 잘못된 수를 부를 때마다 0을 외쳐서, 가장 최근에 재민이가 쓴 수를 지우게 시킨다. 재민이는 이렇게 모든 수를 받아 적은 후 그 수의 합을 알고 싶어 한다. 재민이를 도와주자! 입력첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경우 해당 수를 쓴다. 정수가 "0"일 경우에 지울 수 있는 수가 있음을 보장할 수..

  9. 2020.08.14 C언어 2차원 배열 동적 할당 예제

    // 동적 할당을 이용하여 ROW x COL 크기의 2차원 배열 만들기 #include #include #define ROW 10 #define COL 10 int main() { int count = 0; // 동적할당을 이용하여 2차원 배열 생성하기 int **arr = (int**)malloc(sizeof(int) * ROW); for (int i = 0; i < ROW; i++) { arr[i] = (int*)malloc(sizeof(int) * COL); } // 2차원 배열에 데이터 넣기 for (int i = 0; i < ROW; i++) { for (int j = 0; j < COL; j++) { arr[i][j] = count++; } } // 2차원 배열의 내용 출력하기 for (int..

728x90


📖 Contents 📖