[C++] ios::sync_with_stdio(0); cin.tie(0);
·
📚 STUDY/📈 알고리즘
알고리즘 강의를 보다가 C++로 갈아타고자 마음을 먹고, C로 풀었던 문제들을 C++로 다시 풀면서 강사님의 코드와 비교해봤다. 위의 두 줄이 포함되어있어, 바로 검색해봤다.한 줄로 설명하자면, "입출력 속도가 빨라지고, 그로 인해 시간 초과로 틀렸던 문제가 맞는 경우가 있어서" 이다. ❓ ios::sync_with_stdio(0)C, C++ 표준 stream의 동기화를 비활성화하는 코드이다.C++에서도 C언어처럼 printf, scanf를 사용하는 경우가 있었는데, 비활성화 하게되면 이를 사용할 수 없다.대신, C++ 스타일 코드만 사용해 기존 동기화 과정에서 필요하던 시간이 절약되어, 입출력 속도가 빨라진다.💥 입/출력으로 cin, cout만 쓰자 ❓ cin.tie(0)cin.tie 자체는 cin,..
[프언] C에서 C++로 갈아타기
·
📚 STUDY/📈 알고리즘
코딩 공부를 시작할 때부터 나와 함께 해온 C...C++로 갈아타려고 확고한 마음을 먹었습니다. 왜냐구요?일단 제일 큰 이유는 요새 알고리즘을 다시 공부하는데 오빠가 추천해준 유튜브 강의가 C++ 기준이다.그래도 문제는 C로 풀어보자~하고 약 30개의 문제를 풀었는데, 정답도 C++로만 제공이 되고강의 설명도 C++ 기준으로 하니 C언어로 공부하는 나에게 득이 크지 않다는 느낌을 받았다.(어느정도는 도움이 되지만, 이론 그 이상으로는 도움이 크게 되지 않는 기분이었다.)(특히 코드를 짤 때, 문제는 맞았지만 내 코드가 효율성이 좋은 코드일까..?에 대해 자세히 알 수가 없었다.) C++에는 STL(Standard Template Library)이 존재한다.STL은 C++을 위한 라이브러리로  알고리즘, ..
Diamond-Square Algorithm
·
📚 STUDY/📈 알고리즘
알고리즘 문제를 풀다가 Diamond-Square Algorithm 이라는 것을 발견하고, 문득 궁금해져서 포스팅을 하게 되었다.이 알고리즘은 height-map을 생성하는 방법에 사용되며, 1982년 SIGGRAPH에서 Fournier, Fusseell 및 Carpenter에 의해 처음 소개되었다고 한다. 문제에 나온 설명은 아래와 같다."이 알고리즘은 정사각형을 이루는 점 4개를 고르고 그 후에는 다음과 같은 과정을 거쳐 모양이 만들어진다.정사각형의 각 변의 중앙에 점을 하나 추가한다.정사각형의 중심에 점을 하나 추가한다. [그림]은 0단계(start)에서 2단계(2 iterations)까지 수행한 결과이다. 각 단계(N)가 계속해서 커져갈수록 점의 수가 커져간다."  이 알고리즘에 대한 설명이 많지..
[tip] 여러 줄 한 번에 출력하기
·
📚 STUDY/🔥 C
A         BB       CCC      DDDD    EEEEEE  FFFFFFFFFGGGGGGGGG 이런식의 문자들을 printf 한 번만 사용해서 출력할 때, 백슬래쉬(\)를 활용하자.printf("\ A\n\ BB\n\ CCC\n\ DDDD\n\ EEEEEE\n\ FFFFFFFFF\n\GGGGGGGGG"); (예시 문자와 좀 다른 형태이지만 ㅎㅎ) ✅ 백슬래쉬를 적고 다음 줄에 문자를 이어서 쓸 수 있다!
Q&A (continue, goto, null)
·
📚 STUDY/🔥 C
📌 6.1 단원에서 나온 루프 말예요, "> 0" 검사를 빼면 좀 더 루프가 짧아지지 않나요? i가 0이 되면 루프는 멈출거고, 원래 사용했던 루프랑 동일하게 작동하잖아요.while (i > 0) { printf("T minus %d and counting\n", --i);}while (i) { printf("T minus %d and counting\n", --i);} - 간결해보이지만, 몇 가지 단점이 존재함.① 가독성이 떨어짐. 새 코드를 보면 i가 0이 되면 종료할 거라는 건 알겠지만, i를 통해 숫자를 증가하면서 수를 세고 있는 건지, 감소갛면서 수를 세고 있는 건지 불명확함.② 새 코드는 만약 i가 루프가 실행될 때, 음수라도 되는 순간 원래 코드에서 의도한 방식대로 작동하지 않음. 원래..