1. Roman and Browser https://codeforces.com/contest/1100/problem/Ab를 0부터 k-1까지 바꿔가면서 비교를 통해 최대 절대값을 찾아내면 됩니다. 직접 b+ik만 제외하면서 더하는 것이 쉽지 않기 때문에 전체 합을 구해놓고 b+ik의 원소를 빼는 형태로 구현했습니다. #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int n,k; cin >> n >> k; int Data[n]={0,}, initSum = 0; for (int i=0;i> Data[i]; initSum += Data[i]; } int output = 0; for (int b..
1. Integer Sequence Dividing https://codeforces.com/contest/1102/problem/A 처음에 임의의 원소를 받아서 차가 최소가 되도록 나눈다는 줄 알고 이상한 방향으로 고민했었습니다. 만약 그런 문제였다면 어떻게 풀어야 할 지 아직도 모르겠네요. 문제에서는 연속된 n개의 수에 대해서만 풀면 됩니다. 연속된 4개의 수가 x, x+1, x+2, x+3 이렇게 주어졌다면 A에다가 x와 x+3을 넣고 B에다가 x+1과 x+2를 넣으면 없는 걸로 생각할 수 있습니다. 그런 식으로 큰 쪽부터 네 개씩 덜어내면서 문제를 1,2,3 최대 세 개의 연속한 원소가 있는 형태로 바꿀 수 있어요. 이 형태의 출력은 그냥 resultArr라는 배열로 저장했습니다. 이게 최적인 이..
카잉 달력(BOJ)문제 자체는 쉽습니다. x에다가 M을 계속 더해가는 식으로 구현했는데 어디선가 자꾸 틀리네요. 다른 풀이 찾아서 따라써보고 이건 일단 포기했습니다. 반례 테스트 케이스를 준다면 좋을텐데 ㅜㅜㅜ여담으로, 극한의 효율성을 추구한다면 Extended Euclid Algorithm을 찾아써도 좋을 것 같아요. 최대공약수를 구하는 과정에서 문제에서 요구하는 값인 Bezout's coefficient를 자연스럽게 얻을 수 있기 때문입니다. #include int gcd(int a, int b){ if (b == 0){ return a; } else{ int r = a % b; return gcd(b,r); } } long long int lcm(int a, int b){ return a*b/gcd..
블로그에 Github Markdown CSS와 highlight.js를 적용했습니다. 다음 내용은 테스트 입니다. Test for math equation. \[ \int _a ^b f(x) dx \] any difference? \( \sum a_n \) 테스트 코드 출처: https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet $ \int f(x) dx $H1 H2 H3 H4 H5 H6 Alternatively, for H1 and H2, an underline-ish style: Alt-H1 Alt-H2 Emphasis, aka italics, with asterisks or underscores. Strong emphasis, aka b..
파이썬 2.7 버전 기준으로cmd의 cd 명령어로 원하는 경로에 들어간 이후 (윈도우 기준, 다른 OS는 각자의 bash, terminal을 사용하세요)python -m SimpleHTTPServer 8080를 입력하면 localhost:8080에 로컬 서버가 호스팅됩니다!
https://developer.mozilla.org/en-US/docs/Web/Manifest다른 사람이 짠 html을 읽다가 이 보여서 뭔가 하고 찾아봤어요.가 캐시를 저장하는 기능과 구별됩니다(처음에 한 삽질!). 오프라인에서 굴러가게 만드는 기능인가 하고 저 json 파일을 열어봤는데 캐시의 형식을 가지지 않더라고요. 그냥 css 파일을 보는 느낌..결론적으로 '홈 화면에 추가'에 들어가는 정보 같은 것을 다룹니다. 아이콘, 사이트명, 설명, 테마색 등을 설정할 수 있어요. 심심하면 이 블로그에도 추가할 수 있겠네요.
https://ko.wikipedia.org/wiki/%EB%8B%A8%EC%9D%BC_%EC%B1%85%EC%9E%84_%EC%9B%90%EC%B9%99https://ko.wikipedia.org/wiki/%EA%B0%9C%EB%B0%A9-%ED%8F%90%EC%87%84_%EC%9B%90%EC%B9%99 1. 단일 책임 원칙: 모듈/클래스 책임의 분리한 모듈이 여러 가지 일을 동시에 수행하게 하지 말자는 것입니다. 모듈이나 클래스를 정의하는 근본적인 이유와도 관련이 있을 것 같네요. 나중에 객체 지향 프로그래밍을 배우고 다시 읽어봐야겠어요. 아직은 절차적/구조적 프로그래밍에 너무 익숙하기 때문입니다 ㅠ2. 개방-패쇄 원칙: 확장에 대해서는 열리고, 수정에 대해서는 닫혀있음'A가 코딩을 하다가 B가 코..
마크다운은 조판 언어입니다. Markup중에 Markdown이 있는 것이죠(??)https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet이것만 알면 마크다운을 다루는 데에 문제가 없다.. 정도로 지금까지 봐온 것 중에 가장 잘 정리되어 있습니다.제가 생각하기에 조판 환경과 비교해서 마크다운은1. html, latex보다 직관적이고 단순합니다. 태그를 열고 닫을 필요가 없기 때문에 입력하기도 더 편합니다! 그런데도 inline html을 지원한다는 것은 갓갓 조판 환경임을 알 수 있는 대목입니다.2. 워드, 한글보다 기능적으로 열려 있습니다. 텍스트 기반에 '컴파일'이라는 과정을 거치기 때문에 직접 원하는 값들을 css에서 조정할 수 있습니다.3...
http://dgkim5360.tistory.com/entry/adjusting-iframe-height-100-precent사용자의 스크린에 iframe을 맞출 때 무조건 자바스크립트를 써야 할 줄 알았는데, vw, vh라는 단위가 존재하는 것을 알고 순간 감동했습니다. 예를 들어 80vh라는 단위를 사용한다면 그 사용자 스크린 높이의 80%를 자동적으로 반영됩니다!
분할 정복divide-and-conquer을 이용해 구현한 배열의 정렬 함수입니다. 시간복잡도는 \(O(N \log N ) \)입니다. merge 함수에서 \(O(N)\)이 걸리고, 분할 정복 프로세스가 \(O(\log N) \)이기 때문입니다.