💻 Development 408

[백준/BOJ] 14938 - 서강그라운드

14938 - 서강그라운드 📌 문제 예은이는 요즘 가장 인기가 있는 게임 서강그라운드를 즐기고 있다. 서강그라운드는 여러 지역중 하나의 지역에 낙하산을 타고 낙하하여, 그 지역에 떨어져 있는 아이템들을 이용해 서바이벌을 하는 게임이다. 서강그라운드에서 1등을 하면 보상으로 치킨을 주는데, 예은이는 단 한번도 치킨을 먹을 수가 없었다. 자신이 치킨을 못 먹는 이유는 실력 때문이 아니라 아이템 운이 없어서라고 생각한 예은이는 낙하산에서 떨어질 때 각 지역에 아이템 들이 몇 개 있는지 알려주는 프로그램을 개발을 하였지만 어디로 낙하해야 자신의 수색 범위 내에서 가장 많은 아이템을 얻을 수 있는지 알 수 없었다. 각 지역은 일정한 길이 l (1 ≤ l ≤ 15)의 길로 다른 지역과 연결되어 있고 이 길은 양방향..

[백준/BOJ] 13549 - 숨바꼭질 3

13549 - 숨바꼭질 3 📌 문제 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 0초 후에 2*X의 위치로 이동하게 된다. 수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾을 수 있는 가장 빠른 시간이 몇 초 후인지 구하는 프로그램을 작성하시오. 📋 코드 from collections import deque def bfs(i, visited): q = deque() q.append(i) visited[i] = True while q: x..

[정보처리기사] 1과목 4장 - 인터페이스 설계

1과목 - 소프트웨어 설계 4장. 인터페이스 설계 27. 시스템 인터페이스 요구사항 시스템 인터페이스 요구사항 구성 시스템 인터페이스는 독립적으로 떨어져 있는 시스템들끼리 연동하여 사용하기 위한 접속 방법이나 규칙 시스템 인터페이스 요구사항 명세서 인터페이스 이름 및 주기 / 연계 대상 시스템 / 연계 방식 / 송신 데이터 (수신 데이터 미포함) 등 포함 요구사항 명세서는 요구사항 단위별로 작성 시스템 인터페이스 요구사항 분석 요구사항 명세서에서 기능적 요구사항과 비기능적 요구사항으로 분류하고 요구사항 명세를 구체화 요구사항 분석은 소프트웨어 요구사항 분석 기법을 적절히 이용 요구사항에 대한 상대적 중요도를 평가하여 우선순위 부여 요구사항의 분해가 필요한 경우 적절한 수준으로 세분화 시스템 인터페이스 요..

[정보처리기사] 1과목 3장 - 애플리케이션 설계

1과목 - 소프트웨어 설계 3장. 애플리케이션 설계 20. 소프트웨어 아키텍처 소프트웨어 아키텍처의 설계 소프트웨어 아키텍처는 소프트웨어를 구성하는 요소들 간의 관계를 표현하는 시스템 구조 이해 관계자들의 의사소통 도구로 활용 기본 원리 모듈화 추상화 단계적 분해 정보은닉 모듈화 (Modularity) 소프트웨어 성능을 향상시키거나 유지 관리가 용이하도록 시스템의 기능들을 모듈 단위로 나누는 것 자주 사용되는 기능들을 공통 모듈로 구성하여 프로젝트의 재사용성 향상 추상화 (Abstraction) 문제의 포괄적인 개념을 설계한 후 차례로 세분화하여 구체화시켜 나가는 것 최소의 비용으로 실제 상황에 대처 가능 추상화의 유형 과정 추상화 : 전반적인 흐름만 파악 데이터 추상화 : 데이터의 세부적인 용도를 정의..

[정보처리기사] 1과목 2장 - 화면 설계

1과목 - 소프트웨어 설계 2장. 화면 설계 10. 사용자 인터페이스 사용자 인터페이스 (UI, User Interface)의 개요 사용자 인터페이스는 사용자와 시스템 간의 상호작용이 원활히 이뤄지도록 도와주는 소프트웨어 사용자 인터페이스의 세 가지 분야 정보 제공과 전달을 위한 물리적 제어에 관한 분야 콘텐츠의 상세적인 표현과 전체적인 구성에 관한 분야 모든 사용자가 편리하고 간편하게 사용하도록 하는 기능에 관한 분야 사용자 인터페이스의 특징 사용자 만족도에 가장 큰 영향을 미치는 중요한 요소 정보 제공자와 공급자 간의 매개 역할을 수행 사용자 인터페이스의 기본 원칙 직관성 : 누구나 쉽게 이해하고 사용 유효성 : 사용자의 목적을 정확하고 완벽하게 달성 학습성 : 누구나 쉽게 배우고 익힐 수 있어야 함..

[정보처리기사] 1과목 1장 - 요구사항 확인

1과목 - 소프트웨어 설계 1장. 요구사항 확인 1. 소프트웨어 생명 주기 소프트웨어 생명 주기 (Software Life Cycle) 소프트웨어 개발 방법론의 바탕이 되는 것으로 소프트웨어를 개발하기 위한 과정을 각 단계별로 나눈 것 소프트웨어 개발 단계와 각 단계별 주요 활동 및 결과에 대한 산출물로 표현 소프트웨어 생명 주기 모형 폭포수 모형 프로토타입 모형 나선형 모형 애자일 모형 폭포수 모형 (Waterfall Model) 전통적인 소프트웨어 생명 주기 모형 개발 과정의 한 단계가 끝나야만 다음 단계로 넘어갈 수 있는 선형 순차적 모형 각 단계가 끝난 후 다음 단계를 수행하기 위한 결과물이 명확하게 산출되어야 함 프로토타입 모형 (Prototype Model, 원형 모형) 사용자의 요구사항을 정..