전체 글 39

플러터 앱에 Firebase 연동하기

새 프로젝트를 만들려고 하니 이것저것 환경 설정하는 부분이 전혀 기억이 안 나요. 하하... 블로그에 적어두는 습관을 갖도록 해야겠습니다. 😂😂😂 1. Vscode에 플러터 프로젝트 새로 만들기 Vscode에 플러터와 다트 플러그인을 설정하는 것은 생략하도록 하겠습니다. 맥 OS 기준 Command + Shift + P 를 누르면 팔레트 창이 보이는데 Flutter: New Project를 선택합니다. 그리고 아래 사진에서 Application을 선택하고 원하는 폴더를 지정 간단하게 플러터 프로젝트 생성 완료했습니다. 그렇지만 이전에 organization을 설정해두지 않았으면 패키지명이 com.example.프로젝트명으로 되어있을 것인데요. 저는 기존에 설정해 놓은 것이 있었기 때문에 com.zzing..

[16932번] 모양 만들기

https://www.acmicpc.net/problem/16932 16932번: 모양 만들기 N×M인 배열에서 모양을 찾으려고 한다. 배열의 각 칸에는 0과 1 중의 하나가 들어있다. 두 칸이 서로 변을 공유할때, 두 칸을 인접하다고 한다. 1이 들어 있는 인접한 칸끼리 연결했을 때, 각각의 www.acmicpc.net 주어진 지도에서 1이 들어있는 칸끼리 연결한 것을 모양이라고 하는데, 지도의 칸에 들어있는 수를 변경해서 모양의 최대 크기를 구하는 문제입니다. 지도는 0, 1로만 구성되어 있는데요. 1을 0으로 바꾸면 모양의 크기는 무조건 줄어들기 때문에 0에서 1로 바꿔는 쪽으로만 생각합니다. 단순히 생각해서 한 칸씩 바뀔 때마다 그룹의 최대 크기를 구해본다고 했을 때, 시간복잡도는 \(O(NM*N..

[코드팩토리의 플러터 프로그래밍] 3장. 다트 비동기 프로그래밍

다트 객체 지향 프로그래밍에 관하여 궁금하시다면 이전글을 참조해 주세요.😄 2023.02.22 - [독서/IT・컴퓨터] - [코드팩도리의 플러터 프로그래밍] 2장. 다트 객체지향 프로그래밍 [코드팩도리의 플러터 프로그래밍] 2장. 다트 객체지향 프로그래밍 다트 기초 문법은 이전글에서 보실 수 있어요.😆 2023.02.20 - [독서/IT・컴퓨터] - [코드팩토리의 플러터 프로그래밍] 1장. 다트(dart) 입문하기 [코드팩토리의 플러터 프로그래밍] 1장. 다트(dart) 입문 zzingonglog.tistory.com 다트 언어는 동기/비동기 프로그래밍을 지원합니다. 동기는 요청하고 나서 응답이 올 때까지 코드를 더 이상 진행하지 않고 응답을 받을 때까지 기다리고 받고 나서야 다음 코드로 진행을 하는데요..

[코드팩토리의 플러터 프로그래밍] 2장. 다트 객체지향 프로그래밍

다트 기초 문법은 이전글에서 보실 수 있어요.😆 2023.02.20 - [독서/IT・컴퓨터] - [코드팩토리의 플러터 프로그래밍] 1장. 다트(dart) 입문하기 [코드팩토리의 플러터 프로그래밍] 1장. 다트(dart) 입문하기 다트에 입문하기에 앞서 플러터 개발 환경 구축에 대해 궁금하신 분은 이전 글을 참조하시면 될 것 같습니다. 2023.02.15 - [독서/IT・컴퓨터] - [코드팩토리의 플러터 프로그래밍] 0장. 플러터(flutter) zzingonglog.tistory.com 다트 언어는 높은 완성도로 객체 지향 프로그래밍을 지원한다고 합니다. 플러터 역시 객체 지향 프로그래밍으로 설계된 프레임워크이고요. 열심히 따라쳐보면서 객체지향 프로그래밍 관련하여 문법 내용을 위주로 정리해보았습니다.😀 ..

[코드팩토리의 플러터 프로그래밍] 1장. 다트(dart) 입문하기

다트에 입문하기에 앞서 플러터 개발 환경 구축에 대해 궁금하신 분은 이전 글을 참조하시면 될 것 같습니다. 2023.02.15 - [독서/IT・컴퓨터] - [코드팩토리의 플러터 프로그래밍] 0장. 플러터(flutter) 개발 환경 구축 [코드팩토리의 플러터 프로그래밍] 0장. 플러터(flutter) 개발 환경 구축 모바일 개발을 하고 싶었는데 시작도 안 해보고 있었다가, 최근에 플러터에 관심이 생겨서 플러터를 배워보려고 합니다.🤓 처음엔 공식문서만 보면서 하려고 했는데 빠르게 배우고 싶어서 도 zzingonglog.tistory.com 다트 공식 문서입니다. https://dart.dev/guides Dart documentation Learn to use the Dart language and libr..

[12886번] 돌 그룹

https://www.acmicpc.net/problem/12886 12886번: 돌 그룹 오늘 강호는 돌을 이용해 재미있는 게임을 하려고 한다. 먼저, 돌은 세 개의 그룹으로 나누어져 있으며 각각의 그룹에는 돌이 A, B, C개가 있다. 강호는 모든 그룹에 있는 돌의 개수를 같게 만들려 www.acmicpc.net 돌 그룹 3가지가 있는데 이 3가지 그룹의 돌 개수를 같게 할 수 있는지를 찾는 문제입니다. 각 그룹의 돌 개수를 정점이라고 생각하면 BFS로 풀 수 있습니다. 점화식은 d[a][b][c]로 정할 수 있는데, 전체 돌 개수를 구한 sum = a + b + c 값을 이용하면 굳이 3차원 배열이 아닌 d[a][b]인 2차원 배열으로도 문제를 해결 할 수 있습니다. 점화식 d[i][j] : 첫 번..

[5014번] 스타트링크

https://www.acmicpc.net/problem/5014 5014번: 스타트링크 첫째 줄에 F, S, G, U, D가 주어진다. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) 건물은 1층부터 시작하고, 가장 높은 층은 F층이다. www.acmicpc.net 건물 층을 엘리베이터로 방문하는데 목적층에 도달하기 위해 엘리베이터 버튼을 적어도 몇 번 눌러야 하는지 구하는 문제입니다. 적어도라는 말은 최소로 버튼을 눌러보는 것으로 바꿔서 생각할 수 있습니다. 최소로 버튼을 눌러서 각 층을 방문한다고 생각할 수 있는데 각 층을 정점이라고 생각해 보면, BFS로 문제를 해결하면 되겠습니다. 각 층에 방문할 때 dist 배열에는 최소로 버튼을 누르는 횟수를 저장하면서, 동시..

[코드팩토리의 플러터 프로그래밍] 0장. 플러터(flutter) 개발 환경 구축

모바일 개발을 하고 싶었는데 시작도 안 해보고 있었다가, 최근에 플러터에 관심이 생겨서 플러터를 배워보려고 합니다.🤓 처음엔 공식문서만 보면서 하려고 했는데 빠르게 배우고 싶어서 도서를 구입했어요. 교보문고에서 플러터 책을 검색하면서 그냥 가장 최근에 나온 책으로 선택했고요. 😅 코드팩토리의 플러터 프로그래밍이라는 책인데요. 아이패드로 보려고 이북으로 구입했습니다. https://product.kyobobook.co.kr/detail/S000200473539 코드팩토리의 플러터 프로그래밍 | 최지호(코드팩토리) - 교보문고 코드팩토리의 플러터 프로그래밍 | ★ 인프런 NO. 1 플러터 강사와 함께 ★ 왕초보 실력을 현업 수준으로 끌어올리기저자는 왕초보 실력을 현업 수준으로 끌어올리기를 목표로 이 책을 썼..

vscode.dev를 이용하여 원격으로 아이패드에서 c/c++ 코딩&빌드 하기

카페에 노트북을 들고 갈 때마다 가끔은 짐이 무겁게 느껴질 때가 있어요. 그래서 아이패드 하나만 들고 가서 코딩이 가능한지 알아보던 참에... 브라우저만으로 vscode를 사용할 수 있다는 vscode.dev라는 것을 알게 되었어요. 단순히 브라우저에서 접속만 하면 vscode와 동일한 UI에 코드 읽기, 쓰기, 수정, 깃허브 연동까지 다 돼서 신기했는데요. c/c++는 빌드가 안되더라고요.😞 그래서 다른 방법을 알아보니 Visual Studio Code Server를 노트북이나 데스크톱에 설치하고 깃허브 계정만 있으면 vscode.dev를 이용하여 원격으로 개발을 할 수 있다고 하여 바로 설치를 해보았습니다.🥹 vscode.dev는 아래 url로 들어가면 바로 확인하실 수 있습니다. https://v..

Tips 2023.01.30

[12865번] 평범한 배낭

https://www.acmicpc.net/problem/12865 12865번: 평범한 배낭 첫 줄에 물품의 수 N(1 ≤ N ≤ 100)과 준서가 버틸 수 있는 무게 K(1 ≤ K ≤ 100,000)가 주어진다. 두 번째 줄부터 N개의 줄에 거쳐 각 물건의 무게 W(1 ≤ W ≤ 100,000)와 해당 물건의 가치 V(0 ≤ V ≤ 1,000) www.acmicpc.net 냅색(knapsack) 문제로도 유명한 다이나믹 문제입니다. 문제에서 배낭에 넣을 수 있는 무게 k가 주어지고, n개의 물건은 각각 무게 w와 가치 v가 주어집니다. 배낭 안에 물건을 이리저리 넣었을 때 담을 수 있는 물건의 최대가치값을 구하는 것입니다. n개의 물건 각각은 배낭 안에 들어가거나 안 들어갈 수 있으며, 동일한 물건은..