[Python] 18258 - 큐 2
·
Algorithm
문제 정수를 저장하는 큐를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여섯 가지이다. push X: 정수 X를 큐에 넣는 연산이다. pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 큐에 들어있는 정수의 개수를 출력한다. empty: 큐가 비어있으면 1, 아니면 0을 출력한다. front: 큐의 가장 앞에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. back: 큐의 가장 뒤에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. 입력 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. ..
[Python] 10828 - 스택
·
Algorithm
문제 정수를 저장하는 스택을 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 다섯 가지이다. push X: 정수 X를 스택에 넣는 연산이다. pop: 스택에서 가장 위에 있는 정수를 빼고, 그 수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 스택에 들어있는 정수의 개수를 출력한다. empty: 스택이 비어있으면 1, 아니면 0을 출력한다. top: 스택의 가장 위에 있는 정수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. 입력 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보..
[Flutter] 간단한 주사위 굴리기
·
개발 타임캡슐/Flutter
이러한 형태의 주사위 앱을 만들어본다. 완성된 주사위 앱의 모습이다. 구조도 이번에 만들 앱의 구조도이다. github.com/londonappbrewery/dicee-flutter 우선 깃에서 클론을 받아온다. 기본적으로 AppBar, App Icon, background color 등이 미리 설정이 되어있다. 이제 여기에 주사위 이미지를 추가해보자 이미지가 화면보다 크기 때문에 노란색과 검은색이 교차된 이상한 이미지가 나타난다. Expanded 여기서 Expanded 위젯이 사용된다. Expanded 위젯은 자식이 사용 가능한 공간을 채우도록 행, 열 또는 유한한 영역의 자식을 확장하는 위젯이다. Expanded 위젯을 사용한 모습 Flex Flex는 간단한 방법으로 비율을 조정할 수 있다. 디폴트 ..
[Python] 2750 - 수 정렬하기
·
Algorithm
문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. 출력 첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다. 정답 n = int(input()) a = [] for i in range(n): a.append(int(input())) a.sort() for i in range(n): print(a[i]) 이건 간단하게 파이썬 자체 sort를 이용해서 풀었다. 또 다른 정답 def ins_sort(a): for i in range(1, len(a)): key =..
[Flutter] 플러터 이미지(image) 넣기 + AppBar 만들기
·
개발 타임캡슐/Flutter
이번 프로젝트의 구조도입니다. import 'package:flutter/material.dart'; void main() { runApp(MaterialApp( home: Scaffold( backgroundColor: Colors.grey, appBar: AppBar( title: Text('I Am Poor'), backgroundColor: Colors.black12, ), body: Center( child: Image( image: AssetImage('images/coal.png'), ), ), ), )); } 이번 프로젝트의 코드입니다. MaterialApp안에 Scaffold라는 layout 위젯을 넣어주면 appBar, Body, BottomNavigationBar, FloatingAc..
[Python] 백준 2292 - 벌집
·
Algorithm
문제 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌을 때, 벌집의 중앙 1에서 N번 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나가는지(시작과 끝을 포함하여)를 계산하는 프로그램을 작성하시오. 예를 들면, 13까지는 3개, 58까지는 5개를 지난다. 입력 첫째 줄에 N(1 ≤ N ≤ 1,000,000,000)이 주어진다. 출력 입력으로 주어진 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나는지 출력한다. 정답 n = int(input()) res = 1 room = 1 while True: if n == 1: print('1') break..