본문 바로가기

전체 글

(339)
172번 Factorial Trailing Zeroes 풀이(c++) 풀이 해설을 요청하신 분이 있어서.. 이 문제는 'trailing zero'을 구하는 문제이다. 숫자의 가장 뒤에 연속해서 붙어오는 0의 갯수를 세는 문제라고 말해도 될것같다. (단 0인경우에는 숫자를 세지 않는다) 처음에는 주어진 숫자를 문자열로 바꿔서 맨 뒤에 있는 0의 갯수를 세는걸로 생각했지만, 더 효율적인 방법이 있을거라 판단하고 생각하다보니 한 가지 규칙을 발견하게 되었다. n! = x * 10^r 맨 뒤에 연속해서 오는 숫자가 r이라고 할 때, 위와 같은 수식으로 문제를 바꿔서 표현할 수 있다. 오히려 '맨 뒤에 있는 0의 갯수'보다 위 식이 훨씬 간결하고 정확하게 문제를 정의하고 있다. 즉, n!을 소인수분해하여 나오는 10의 갯수가 이 문제의 정답이 된다. 10을 소인수분해하면 '2*5'..
트래픽을 쓸어담는 검색엔진 최적화 후기 검색엔진(구글)이 좋아하는 웹 페이지를 만드는 방법이 적혀있는 책 검색엔진 사용자의 75%는 검색 결과에서 두 번째 페이지로 넘어가지 않으며 7~80%의 사용자는 광고로 인한 상위 노출을 클릭하지 않고 검색엔진 자체의 결과에 집중하기 때문에 웹 마케팅 관점에서 검색엔진을 최적화 하는 일은 굉장히 중요한 일이라고 할 수 있다. 웹 페이지를 만드는데 여러 이유가 있지만, 대부분 웹 서비스를 만드는 사람들은 최대한 많은 사람들이 자신의 켄텐츠를 이용하게 하거나 구매전환율을 높이는 것이 목적일 것이다. 이러한 목표를 이루기 위해 가장 중요한 것이 SEO인데, 나는 프론트엔드 공부를 하면서 SEO에 이런 세계가 있다는 것을 전혀 알지 못하였다. 보통 FE공부를 하면서 매우 간단한 SEO에 대해 공부하기는 하지만,..
유니티 Rest API 통신 UnityWebRequest 유니티에서 WWW을 지원하지 않는다고 발표한지 꽤 된거같은데 아직 WWW로 작성된 예제들이 많다. UnityWebRequset를 이용하여 로그인/로그아웃을 하고 파일(이미지)을 다운로드해오는 코드를 작성해보았다. 완성된 코드라고는 할 수 없겠지만, 기본적인 뼈대는 작성해놓았으니 여기서 필요한 부분만 수정해서 사용하면 될듯하다! using System.Collections; using System.IO; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI; public class InternetCheck : MonoBehaviour { private string token = null; private string login_email..
RabbitMQ 브로커 설정 RabbitMQ는 가장 널리 배포된 오픈소스 메시지 브로커입니다. MQTT, AMQP, HTTP및 WebSockets등 다양한 메시지 통신을 지원하며, 메시지 통신을 쉽게 관리할 수 있는 매니지먼트 페이지도 제공합니다. 저는 MQTT의 메시지 통신을 위한 브로커가 필요해 RabbitMQ를 이용하였습니다. Messaging that just works — RabbitMQ Developer Experience Deploy with BOSH, Chef, Docker and Puppet. Develop cross-language messaging with favorite programming languages such as: Java, .NET, PHP, Python, JavaScript, Ruby, Go, a..
생활코딩- JavaScript Immutability 완강 짧게 볼 수 있는 JavaScript Immutability강의. 함수형 프로그래밍에서 왜 불변성을 지켜야 하는지 이해가 안됬었는데 보다보니까 어떤 느낌인지 대충 감을 잡게 되었다. assign, freeze와 같은 기본적인 불변성 테크닉을 알게 되었지만 제대로 불변성을 지키려면은 immutable js같은 라이브러리를 익히는게 좋을듯 하다. 자바스크립트를 공부해가며 나의 첫번째 js프로젝트의 감이 어느정도 잡히고있다. React+Redux+Immutable.js+WebGL 이정도를 사용해서 진행할듯 하다. 앞으로 한동안은 생활코딩에 빠져 살듯하다. Immutable.js Immutable collections for JavaScript Immutable data cannot be changed once..
생활코딩 - react 완강 HTML/CSS/JS를 넘어 드디어 리액트 공부를 시작했다. 이번주부터 패스트캠퍼스에서 벨로퍼트님의 리액트 강의가 시작되는데, 패스트캠퍼스에 참고자료에 사람들 반응을 보니 리액트 강의를 따라가기 힘들다는 사람들이 보였다. 나는 무조건 100% 환급 받을 각오로 완주반 강의를 듣고 있으니 어렵다면 미리 준비해가야겠지. 그래서 믿고 듣는 생활코딩 강의로 리액트를 처음 시작해보았다. 역시 생활코딩 강의답게 부드럽고 빠르게 리액트를 사용해서 무언가를 만들어보는 과정을 배울 수 있었다. 아직 HTML로도 웹사이트를 스스로 만들어본 적이 없어 깜빡임이 없는 홈페이지를 만드는 것이 왜 어렵고 리액트가 필요한건지 체감적으로 느끼고 있지는 않지만, 그래도 리액트를 사용해서 기존에 클론코딩한 웹사이트의 디자인을 거의 똑같..
백준16496번 - XML 자바스크립트(Node.js)풀이 난이도: 플래티넘 5 문제 음이 아닌 정수가 N개 들어있는 리스트가 주어졌을 때, 리스트에 포함된 수를 나열하여 만들 수 있는 가장 큰 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 리스트에 포함된 수가 주어진다. 수는 공백으로 구분되어져 있고, 1,000,000,000보다 작거나 같은 음이 아닌 정수 이다. 0을 제외한 나머지 수는 0으로 시작하지 않으며, 0이 주어지는 경우 0 하나가 주어진다. 출력 리스트에 포함된 수를 나열하여 만들 수 있는 가장 큰 수를 출력한다. 수는 0으로 시작하면 안되며, 0이 정답인 경우 0 하나를 출력해야 한다. 출처 University > 한양대 ERICA > 2018 ERICA Software-U..
만들면서 배우는 HTML5+CSS3+jQuery 후기 HTML5, CSS3, 제이쿼리와 모더나이저, LESS, 클라우드 웹 폰트를 통해 다양한 웹사이트를 제작해가며 실습하는 책. 책 이름처럼 만들면서 배우는게 주 목표이기 때문에 기본 문법에 대한 자세한 설명이 없어 이에 대해 따로 공부하고 보면 좋은 시너지를 얻을 수 있다. 나는 지금 패스트캠퍼스 프론트엔드 개발자 온라인 완주반 수업을 듣고 있다. 현재 4주차 수업을 듣고 있는데 실습을 진행하기 보단 HTML5과 CSS3의 기본 태그와 속성에 대해 강의하고 있다. 강의를 들으며 실습을 하고싶다고 생각했는데 이 책을 통해서 아쉬운 부분을 채울 수 있었다. 직접 따라해보면서 익히는게 내가 잘못 이해하고 있던 속성도 찾아내고 재미있게 복습할 수 있었다. 이 책의 단점은 오래된 책이라는점. 레이아웃을 구성하는데 ..