Programming 29

[코드팩토리의 플러터 프로그래밍] 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 플러터 강사와 함께 ★ 왕초보 실력을 현업 수준으로 끌어올리기저자는 왕초보 실력을 현업 수준으로 끌어올리기를 목표로 이 책을 썼..

[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개의 물건 각각은 배낭 안에 들어가거나 안 들어갈 수 있으며, 동일한 물건은..

[13549번] 숨바꼭질 3

https://www.acmicpc.net/problem/13549 13549번: 숨바꼭질 3 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 수빈이가 동생 위치에 도달하기까지 주어진 조건을 만족하며 최소로 걸리는 시간을 구하는 문제입니다. 수빈이의 현재 위치를 x라고 할 때, 움직일 수 있는 행동으로는 1. 순간이동 x → 2 * x (소요시간:0초) 2. 앞으로 이동 x → x + 1 (소요시간:1초) 3. 뒤로 이동 x → x - 1 (소요시간:2초) 이렇게 3가지 입니다. 우선, 수빈이의 처음 시..

[10757번] 큰 수 A + B

https://www.acmicpc.net/problem/10757 10757번: 큰 수 A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net unsigned long long 으로 선언하더라도 저장할 수 없는 큰 수의 연산 문제입니다. 문제의 조건에서 주어지는 수들은 양수이기 때문에 음수의 경우는 신경쓰지 않아도 됩니다. 주어진 수의 값은 최대 \(10^{10000}\)입니다. 1뒤에 0이 1만개가 붙습니다. 수를 string으로 입력 받고, int형 배열로 저장한 후 각 자리수 마다 덧셈 처리를 합니다. 주의해야 할 부분은 같은 자리수의 덧셈시 9보다 커지는 경우 자리올림수 처리 입니다. int carring = 0; 이라는 변수를 선언하여 ..

[14888번] 연산자 끼워넣기

https://www.acmicpc.net/problem/14888 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, www.acmicpc.net 문제에서 주어진 수열의 순서는 변경이 없고, 주어진 연산자들의 순서만 바꿀 수 있습니다. 또한 연산사 우선순위를 따지지 않고 앞에서부터 계산하는데, 그때 가능한 최대값과 최소값을 구하는 문제입니다. 연산자를 +, -, *, / 의 순서대로 배열에 저장합니다. 배열에 저장할 때는 덧셈부터 차례대로 0, 1, 2, 3이 되며, 덧셈이 두개라면 0..