3. 자바의 기초 - 자료형 (숫자, 불, 문자, 문자열, 리스트, ...)
숫자 정수사용 가능한 정수형 : int, long표현 범위 - int : –2,147,483,648 ~ 2,147,483,647 - long : –9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807byte, short도 존재하지만 잘 쓰이지 않음 - byte : –128 ~ 127 - short : –32,768 ~ 32,767long 타입 상수 : 큰 정수를 대입할 때는 끝에 L 또는 l 붙여야 함 예 : long count = 8764827384923849L;실수사용 가능한 실수형 : float, double표현 범위 - float : 약 ±3.4 × 10³⁸ - double : 약 ±1.7 × 10³⁰⁸기본 실수형은 doublefloat 변수에 상수를 ..
2025. 9. 27.
차고문 개폐 시스템 설계
소프트웨어 아키텍처란? 정의소프트웨어 아키텍처는 소프트웨어 시스템의 전체 구조와 구성 방식을 설계하는 것 : 건축에 비유하면 : 건축에서 건축가가 집을 짓기 전에 방 구조, 전기 배선, 수도 배치 등을 설계도에 그리듯 : 소프트웨어 아키텍처는 시스템의 큰 그림(구조)을 먼저 설계 : 즉, 코드 세부 구현 전에 시스템의 “설계도”를 만드는 과정 왜 중요한가?큰 그림 없이 개발하면 → 기능 추가가 어려워지고, 유지보수가 힘들어짐 : 아키텍처 단계에서 잘 설계하면 → 확장성, 안정성, 성능, 보안 등이 보장 : 현실적으로, 대규모 시스템(앱, 클라우드 서비스, IoT, 게임 등)은 혼자 개발하는 게 아니라 팀 단위로 만들기 때문에 공통 언어(설계도)가 필요하기도 함 구성요소1. 구조(Structure)어떤 구..
2025. 9. 24.
18. 보물, 나이순 정렬, 국영수, 문자열 내 마음대로 정렬하기, 파일명 정렬
보물 파이썬에서 내림차순 정렬을 하려면? : reverse=True 옵션을 추가하면 됨my_list = [3, 1, 4, 1, 5, 9, 2]sorted_list_desc = sorted(my_list, reverse=True)print(sorted_list_desc) # 출력: [9, 5, 4, 3, 2, 1, 1] 최종코드N = int(input())A = list(map(int, input().split()))B = list(map(int, input().split()))sorted_A = sorted(A)sorted_B = sorted(B, reverse=True)S = [sorted_A[i] * sorted_B[i] for i in range(N)]print(sum(S)) 나이순 정렬 ..
2025. 9. 22.
17. 정렬, 비교정렬, 기수정렬, 카운팅정렬
정렬 문제 정렬 문제는 무엇을 위해?섞여 있는 데이터(리스트)를 어떤 기준(키)에 따라 오름차순/내림차순으로 다시 배열하는 것 : 예를 들어 입력이 빨간색, 파란색, 초록색 등이라고 할 때 정렬할 기준이 무엇이 될까?임 : 즉, 원소들의 모음 : 학생 성적 리스트, 파일 목록, 날짜들… : 이 입력이 될 수 있음 : 반대로 출력은? : 지정한 기준대로 순서가 정리된 같은 원소들의 모음 그렇다면 비교만 되면 정렬 가능일까?그냥 서로 비교할 수 있다고 해서 곧바로 ‘정렬 가능한 데이터’가 되는 건 아님 : 그럼? : 최소, 최대가 존재해야함 : 즉, 제일 작은 것/큰 것이 잡혀야 정렬이 의미가 있어지고 끝까지 수렴 : 일관된 순서(정렬 기준)가 성립해야 함 : 정렬 알고리즘은 원소들 사이에 "모순 없는 전..
2025. 9. 21.