[Python] 3개의 수 한꺼번에 비교하기
·
🤓 기술 학습 & 공부 기록/Python
📍참고https://www.acmicpc.net/problem/5073 5073번: 삼각형과 세 변각 입력에 맞는 결과 (Equilateral, Isosceles, Scalene, Invalid) 를 출력하시오.www.acmicpc.net 📍코드아래처럼 3가지 경우를 한꺼번에 비교하는게 가능하다x == y == z == 0 이렇게 - 또한, 1 while True: x, y, z = map(int, input().split()) if x == y == z == 0: break nums = sorted([x, y, z], reverse=True) if nums[0] >= nums[1] + nums[2]: print("Invalid") elif x ==..
코드 없는 알고리즘과 데이터 구조 - 12. 알고리즘 기획과 설계
·
🤓 기술 학습 & 공부 기록/컴퓨터 일반
코드 없는 알고리즘과 데이터 구조 (암스트롱 수베로 지음) 더보기 목차 Part 1 - 데이터 구조 Part 2 - 알고리즘 Part 3 - 알고리즘과 데이터 구조를 이해하는데 필요한 지식들 10. 무작위성 11. 스케줄링 알고리즘 12. 알고리즘 기획과 설계 📍타당한 기획과 설계의 필요성 ✅알고리즘(혹은 프로그램)을 설계할 때는 코더가 아닌 컴퓨터 과학자의 자세를 가져야 한다 ✅코더 - 무턱대고 코드부터 작성 - 논리 구조가 빈약하고 다른 사람이 이해하기 어려운 프로그램이 만들어짐 ✅컴퓨터 과학자 : - 알고리즘 구현 전에 기획하고 설계 특징 1️⃣알고리즘을 모듈식으로 설계 - 다양한 프로그래밍 언어로 구현 가능하고, 쉽게 가져다 쓸 수 있는 알고리즘 탄생 - 다양한 패러다임과 응용 프로그램에 적용 가..
코드 없는 알고리즘과 데이터 구조 - 11. 스케줄링 알고리즘 (2)
·
🤓 기술 학습 & 공부 기록/컴퓨터 일반
코드 없는 알고리즘과 데이터 구조 (암스트롱 수베로 지음) 더보기 목차 Part 1 - 데이터 구조 Part 2 - 알고리즘 Part 3 - 알고리즘과 데이터 구조를 이해하는데 필요한 지식들 10. 무작위성 11. 스케줄링 알고리즘 📍스케줄러와 스케줄링 모든 운영체제 내부에는 프로세스 스케줄러가 존재 ✅역할 - 어떤 태스크가 언제 실행될지 결정 ✅디스패처(dispatcher) - 문맥 전환을 수행하고 프로그램의 실행 흐름을 바꾸는 프로세스 스케줄러의 일부 - 문맥 전환(context switching) : 프로세스 -> 다른 프로세스 혹은 태스크 -> 다른 태스크 ✅스케줄링 큐 - 프로세스가 나열된 큐 - 태스크 큐 : 메인 메모리 할당을 기다리는 모든 프로세스가 나열 - 준비 큐 : 메인 메모리에 상주..
코드 없는 알고리즘과 데이터 구조 - 11. 스케줄링 알고리즘 (1)
·
🤓 기술 학습 & 공부 기록/컴퓨터 일반
코드 없는 알고리즘과 데이터 구조 (암스트롱 수베로 지음) 더보기 목차 Part 1 - 데이터 구조 Part 2 - 알고리즘 Part 3 - 알고리즘과 데이터 구조를 이해하는데 필요한 지식들 10. 무작위성 11. 스케줄링 알고리즘 📍운영체제(OS) ✅역할 - 일반적인 컴퓨터에서 CPU를 보조하는 자원은 유한하다 - 따라서 시스템에서 실행중인 여러 프로그램은 메모리와 데이터 처리 시간을 공유해야 한다 - 운영체제는 여러 프로그램이 동시에 실행될 수 있도록 추상화 메커니즘을 제공한다 ✅운영체제는 서버, 랩톱, 휴대폰뿐만 아니라, 복사기, 자동차, 주변기기 속 임베디드 시스템의 마이크로 컨트롤러에서도 실행된다 📍범용 운영체제(general-purpose operating system, GPOS) ✅일반적인 ..
코드 없는 알고리즘과 데이터 구조 - 10. 무작위성
·
🤓 기술 학습 & 공부 기록/컴퓨터 일반
코드 없는 알고리즘과 데이터 구조 (암스트롱 수베로 지음) 더보기 목차 Part 1 - 데이터 구조 Part 2 - 알고리즘 Part 3 - 알고리즘과 데이터 구조를 이해하는데 필요한 지식들 10. 무작위성 📍무작위성 - 식별할 수 있는 패턴 없이 예측 불가능하게 발생하는 성질 (동전을 던져 앞 or 뒤 가 나올 확률) - 사람에게 선천적으로 존재 (심리.. 충동적 행동 등) 반면 컴퓨터는 사람과 달리 항상 의도된 출력을 제공하도록 프로그래밍됨 - garbage in garbage out 프로그래밍에서는 수학의 확률 이론을 기반으로 (무작위) 난수 생성 📍하드웨어 이해하기 컴퓨터가 하드웨어적으로 난수를 생성하는 방법 뿐만 아니라 알고리즘 동작의 기반이 되는 컴퓨터 하드웨어를 이해해야 한다 트랜지스터 - ..
[Python] boolean을 int로 변환하기
·
🤓 기술 학습 & 공부 기록/Python
📍백준 13458 https://www.acmicpc.net/problem/13458 13458번: 시험 감독첫째 줄에 시험장의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 각 시험장에 있는 응시자의 수 Ai (1 ≤ Ai ≤ 1,000,000)가 주어진다. 셋째 줄에는 B와 C가 주어진다. (1 ≤ B, C ≤ 1,000,000)www.acmicpc.net boolean을 int로 변환하여 사용할 수 있다boolean값에 int를 씌우면- true => 1- false => 0 으로 변환된다 N = int(input())data = list(map(int, input().split()))B, C = map(int, input().split())answer = len(data)f..