본문 바로가기

분류 전체보기562

[백준] 1085번 - 직사각형에서 탈출 문제 > 한수는 지금 (x, y)에 있다. 직사각형의 왼쪽 아래 꼭짓점은 (0, 0)에 있고, 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램을 작성하시오. 입력 > 첫째 줄에 x y w h가 주어진다. w와 h는 1,000보다 작거나 같은 자연수이고, x는 1보다 크거나 같고, w-1보다 작거나 같은 자연수이고, y는 1보다 크거나 같고, h-1보다 작거나 같은 자연수이다. 출력 > 첫째 줄에 문제의 정답을 출력한다. 해결방법 > 현재 위치에서 각 경계선까지의 거리 중에 최소 거리를 구한다.(x, y, w-x, h-y) C++ #include #include using namespace std; int main(){ int d[4]; int w, h;.. 2020. 1. 7.
[백준] 1026번 - 보물 문제 > 옛날 옛적에 수학이 항상 큰 골칫거리였던 나라가 있었다. 이 나라의 국왕 김지민은 다음과 같은 문제를 내고 큰 상금을 걸었다. 길이가 N인 정수 배열 A와 B가 있다. 다음과 같이 함수 S를 정의하자. S = A[0]*B[0] + ... + A[N-1]*B[N-1] S의 값을 가장 작게 만들기 위해 A의 수를 재배열하자. 단, B에 있는 수는 재배열하면 안 된다. S의 최솟값을 출력하는 프로그램을 작성하시오. 입력 > 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거나 같은 음이 아닌 정수이다. 출력 > 첫째 줄에 S의 최솟값을 출력한다. .. 2020. 1. 7.
Language of the Computer 컴퓨터가 사람의 언어를 이해하는 과정 사람 -> High level language(C, C++, Java..) -> Assembly language(Instruction) -> machine language(Binary) -> CPU ISA(Instruction Set Architecture) - Instruction의 집합 1) Instruction - 하드웨어와 소프트웨어의 인터페이스 - 프로세서의 동작을 묘사하는 기본 명령 2) CISC (Complex Instruction Set Computer) - 비교적 오래됨 - 복잡하고 많은 명령어로 이루어짐 - 어셈블리 프로그래밍이 쉬운 반면에 CPU 설계가 어려움 3) RISC (Reduced Instruction Set Computer) - 비교적 .. 2019. 12. 23.
Computer Abstraction and Technology Computer 1) 컴퓨터의 종류 - Personal computer : 개인이나 기업에서 범용적으로 사용되는 컴퓨터. 가격과 성능의 절충 - Server computer : 클라이언트에게 네트워크를 통해 정보나 서비스를 제공하는 컴퓨터. 높은 용량, 성능, 신뢰성 - Super computer : 과학기술연산 등 다양한 분야에 사용되는 초고속/거대용량 컴퓨터 - Embedded computer : 다른 기계가 시스템에 내장되어 있는 컴퓨터 2) Post-PC Era - 특정 기능에 특화되고 사용자의 인문학적 소비 겨험에 더 집중하는 디바이스(Personal Mobile Device, Cloud computiong) Eight Great Ideas In Computer Architectures 1) M.. 2019. 12. 22.
Processor - Datapath datapath란? 데이터패스란 CPU안에서 데이터와 주소, 레지스터의 처리 및 연산을 하는 모든 요소를 의미한다 (instruction memory, data memory, PC, Register file, ALU 등 ..) 1. Instruction fetch instruction memory에서 Instruction을 읽어들인다. 1) PC(program count) : 실행해야할 명령어의 주소를 가지고 있는 레지스터 2) Instruction memory : PC로 부터 주소를 읽어들이고 주소에 맞는 Instruction을 output으로 내보냄 3) Add : PC 값을 4byte 씩 증가시키는 연산 수행하므로써 다음 명령어의 주소값으로 PC를 업데이트 시켜줌 2. To implement R-f.. 2019. 12. 17.
Memory Hierarchy Ideal Memory(이상적인 메모리) - 지연시간이 코스트가 없고, 대역폭과 용량이 무한 - 이상적인 메모리의 요구조건은 서로 상반됨(용량이 크면 느려지고, 빠르거나 대역폭이 높아지면 비싸짐) 1. 메모리 종류 1) 휘발성 메모리(volatile memory) (1) SRAM(Static Random Access Memory) - 속도 : 빠름(커패시터가 없음) - 밀도 : 낮음(6T(트렌지스터) cell) - 비용 : 높음 - 커패시터가 없으므로 refresh할 필요없음 (2) DRAM(Dynamic Random Access Memory) - 속도 : 느림(커패시터 있음) - 밀도 : 높음(1T(트렌지스터) 1C(커패시터) cell) - 비용 : 낮음 - 커패시터로 인해 refresh(배터리를 충전.. 2019. 12. 16.
Processor - logic design basics 프로세서(processor)란? 컴퓨터 구조에서 프로세서란 컴퓨터 운영을 위해 기본적인 명령어들을 처리하고 반응하기 위한 논리회로 CPU Time = Instruction count * CPI * Clock cycle time - instruction count는 ISA와 compiler에 의해 결정 - CPI와 clock cycle time은 CPU hardware에 의해 결정되므로 CPU 하드웨어가 어떻게 되어있냐에 따라 CPU 성능에 큰 영향 Logic Design Bascis - 하드웨어는 logic gate(AND, OR, NOT, NAND, NOR, XOR..)라는 simple building block으로 구성됨 - logic은 두가지 타입(조합 논리, 순차 논리)으로 구성 1) Combin.. 2019. 12. 16.
Floating Point Number 1. Floating-point number - 소수를 포함해 매우 큰 수와 작은 수 표현 1) Notation - decimal : 1.0 x 10^(-9) (normalized number) - binary : 1.0(2) x 2^(-1) 2. floating-point representation - Fraction과 exponent는 한 word(32 bits) 안에서 표현. - Fraction을 표현하는데 많은 비트를 사용할 수록 정확도(precision) 증가 - Exponent에 많은 비트를 사용하면 표현할 수 있는 숫자 범위(range) 증가 - overflow : exponent field로 표현할 수 없이 큰 양수가 들어올 때 - underflow : exponent filed에 표현할 .. 2019. 12. 15.
[프론트엔드/베이직] 리스트 페이지 만들기 두 번째 만들어 볼 페이지는 리스트 페이지 입니다 리스트 페이지라고 정식 이름이 있는 게 아니라 그냥 제품이나 서비스들을 나열할 수 있는 페이지란 의미에서 그렇게 말하는 거니까 없는 말 지어낸다고 기분 나빠하지 마세요 아기사자분들 많이 익숙한 사이트라고 생각되는데 이런 식으로 상품이나 서비스를 나열하고 클릭을 하면 상품의 정보를 볼 수 있도록 해주도록 만들어 볼게요 crud 세션 때 했던 r(read)에 제일 관련된 부분이라고 생각되네요 나중에 create, update, delete와 관련된 페이지도 한 번 같이 만들어 볼게요 우리가 이제 만들어볼 페이지의 기본적인 레이아웃입니다. 기본적인 틀은 첫 번째에 알려드렸던 메인 페이지에서 네비게이션 바와 대문사진, 풋터는 그대로 사용할 거예요 페이지를 만들 .. 2019. 5. 12.
[프론트엔드/베이직] 메인 페이지 만들기 경북대학교 프론트엔드를 공부하는 아기사자 화이팅! 우선은 프론트엔드가 가장 처음으로 만들게 되고 가장 신경 쓰는 메인 페이지를 만들어 볼게요 6기 활동 간에 프론트 엔드를 할 때, 가장 신경 쓰이고 귀찮고 어렵고 불만족스러웠던 게 메인 페이지라고 할 수 있는데 아기사자들은 잘할 거라 생각해요 메인 페이지는 우리가 보통 사이트에 들어갔을 때 가장 처음 보게 되는 페이지입니다. 보통 home.html 또는 index.html로 파일을 명명해줍니다 메인 페이지는 음.. 제공하는 서비스나 아이템에 따라 다르겠지만 보통 1. 네비게이션 바 2. 대문 사진 3. 회사 소개 4. 서비스 소개 5. 풋터(?) 로 구성해요 자 그럼 하나하나 만들어봅시다 1. 네비게이션 바 네비게이션 바는 쉽게 말해서 각 페이지로 갈 수.. 2019. 5. 11.