시작!(184)
-
C++ - vector
C++ 에서는 , 정적배열 선언시 배열의 크기를 정해야하는 단점을 보완한 것이라고한다. 애초에 동적배열 . vector는 push_back() , pop_back() 로 삽입과 삭제가 이루어진다. vector 배열의 size는 vec.size() 로 정의된다. vector 자료형은 값이 추가가 될 때마다 공간을 늘려가며 할당을 하므로, 더 큰 여유공간을 할당해둔다. 이걸 vec.capacity()라고 한다. 우선 자주 쓰이는 함수를 정리해보자. 임의의 위치 원소 접근 : vec.at[i] (시간복잡도 : O(1)) 원소 추가 및 제거 : push_back(i) / pop_back(i) (시간복잡도 : O(1)) 임의의 위치 원소 추가 및 제거 : insert(vec.begin() + 2, 15), era..
2022.08.06 -
Denzel washington's speech
keep working, keep striving, never give up. fall down seven times, get up eight. ease is a greater threat to progress than hardship. so people moving keep growing keep learning. 근래에 시험을 보고 나서 살짝 번아웃 되고 이런 저런 생각이 많았는데, 미국 시상식 영상을 보면서 , 덴젤 워싱턴의 스피치를 보게되었다. 대단한 분이고, 한 분야에서 2-30년을 종사한 사람들이다. 이런 분들은 얼마나 많은 노력을 했을까? 비록 이번에 나는 실패했지만, 시도 조차 안했다면 난 한발짝 더 나아가지 못했을 것이다. 살짝 늦은감이 있지만, 더 늦지 않기위해 지금 부터라도 최선을 다..
2022.08.06 -
22-08-05
개발자로서, 일해온 나의 지난 날들을 되새겨보는 시간을 가져보는 ... 지난 한 달 이었다. 많은 생각이 교차했고, 왜 미리 하지않았을까 후회도 되고. 반성을 많이 했던 것 같다. 기회는 올때 잡아야하는데, 이런 기회가 또 올까 ? 싶고. 영어 잘하면 뭐하나... 싶다가도 영어도 안됐으면 이런 기회가 왔을까 싶고. 그래........ ! 아직 난 어려 ! 정신승리로 간드아 . ! ㅠㅅㅠ 가즈아 !!!!!!! 할수 있을거야..... !
2022.08.05 -
1678. Goal Parser Interpretation (C/C++)
You own a Goal Parser that can interpret a string command. The command consists of an alphabet of "G", "()" and/or "(al)" in some order. The Goal Parser will interpret "G" as the string "G", "()" as the string "o", and "(al)" as the string "al". The interpreted strings are then concatenated in the original order. Given the string command, return the Goal Parser's interpretation of command. Examp..
2022.08.04 -
vector & array
# header: #include 배열 대체용품. 일일히 정의해줄필요없이 유용한 함수들이 많다. #include #include using namespace std; int main() { int N; cin >> N; //테스트케이스 N vector v; //벡터 정의 for (int i = 0; i >a; v.push_back(a); } for (int i = 0; i > c; int **arr; arr = new int*[r]; for(int i = 0; i < c; i++) { arr[i] = new int[c]; } for(int i = 0 ; i < r; i++) ..
2022.08.04 -
C++ 입출력 속도 줄이기 !
나는 시간이없다. 빠르게 빠르게 해야하는데 입출력에서 시간을 낭비하면 안된다 ! cin / cout 으로 보통쓰는데, 이게 일반적으로 사용하면 느린갑다. ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); 요걸 넣어주면 좀 더 빨라진다고하니, 한번 써볼까? 편법이라고하는데, 조건이 있다. 1) 싱글 스레드에서만 사용가능. 2) printf, scanf와 섞어서 사용하면 안됨 ! 근ㄷㅔ...코테에서도 이거 쓰나....? 쓰는거 못본거같은데 ... 흠... 찾아봐야겠군... #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout..
2022.08.03 -
C++ 빠르게 익히기.
C언어와 다른점 / 같은점 으로 우선 구분한다 !!! # 같은 점 기본적인 문법구조 : 조건문 ; if / else, switch 문 동일. 제어문 : for / while / break / continue 등등 은 동일하다. # 다른점. 1. print하는게 다르다. scanf 는 cin 으로 받고, cout 는 printf를 대신한다. 끝에 endl은 줄바꿈 + flush인데, 그거 말고 그냥 \n 으로 줄바꿈 하는게 낫다고한다. #include using namespace std; int main() { int N; int *arr = new int[2]; for(int i = 0 ; i > arr[i]; for(int i = 0 ; i >..
2022.08.03 -
유클리드 호제법 (Euclidean Algorithm) in C
유클리드 호제법은, 두 정수의 최대 공약수(Greatest Common Divisor)를 구하는 알고리즘 중 하나이다. a, b의 최대 공약수는, a/b를 나눈 나머지인 r과 b의 최대공약수와 같다는 성질에 따라, 재귀와 반복문을 통해 구현할 수 있다. * 최대 공약수 ( Greatest Common Divisor, GCD ) 두 개 이상의 수가 공통으로 갖고 있는 약수 중 가장 큰 ! 수. ex) 8의 약수 : 1, 2, 4, 8 12의 약수 : 1, 2, 3, 4, 6, 12 8과 12의 최대 공약수 : 4 * 최소 공배수 ( Least Common Multiple , LCM ) ex) 3의 배수 : 3, 6, 9, 12, 15 ... 5의 배수 : 5, 10, 15, 20 ... 3과 5의 최소 공..
2022.08.03 -
점근적 표기법 ( asymptotic notation)
* 점근적 표기법 이란? 상수 계수와 중요하지 않은 항목을 제거한것 ! 점근적 표기법에는 3가지가 있다. - big-ThetaΘ 표기법 > 보통 상수 인자와 낮은 차원의 항목은 생략하고 사용한다. 예를들어 시간이 6n^2 + 100n + 300이라고 가정하면, 계수인 6과 저차원 항목인 100n+300을 생략한 n^2만 실행시간으로 치는것이다. big-세타 표기법을 사용하는건, 실행시간에 대해 점근적으로 근접한 한계값이 있다고 표현하는것이다. 점근적으로 ! 라는 말을 쓰는 이유는, 큰 값의 n에 대해서만 적용되기 때문이다. 근접한 한계값이라는 말은, 위, 아래로 상수값 내에서 실행시간을 좁힐 수 있다는 뜻이다. https://ko.khanacademy.org/computing/computer-scienc..
2022.08.02 -
53. Maximum Subarray
Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum. A subarray is a contiguous part of an array. Example 1: Input: nums = [-2,1,-3,4,-1,2,1,-5,4] Output: 6 Explanation: [4,-1,2,1] has the largest sum = 6. Example 2: Input: nums = [1] Output: 1 Example 3: Input: nums = [5,4,-1,7,8] Output: 23 Constraints: 1
2022.07.31