분류 전체보기

1.선택 정렬 int a[10] = {7, 5, 2, 10, 8, 4, 3, 1, 6, 9}; 선택 정렬은 이 중에서 가장 작은 데이터를 선택해서 맨 앞의 데이터와 바꾸고 그 다음으로 작은 데이터를 선택해서 앞에서 두번째인 데이터와 바꾸는 작업을 반복해서 수행한다. 항상 가장 작은 데이터를 선택해서 정렬하는 방법이다. #include #include using namespace std; int a[10] = {7, 5, 2, 10, 8, 4, 3, 1, 6, 9}; int main(void) { for (int i = 0; i < 10; i++) { int min_value = a[i]; // 우선 i번쨰 값을 mininum으로 설정 int min_idx = i; for (int j = i+1; j < ..
·Algorithm (PS)
https://www.acmicpc.net/problem/2531 2531번: 회전 초밥 첫 번째 줄에는 회전 초밥 벨트에 놓인 접시의 수 N, 초밥의 가짓수 d, 연속해서 먹는 접시의 수 k, 쿠폰 번호 c가 각각 하나의 빈 칸을 사이에 두고 주어진다. 단, 2 ≤ N ≤ 30,000, 2 ≤ d ≤ 3,000, 2 ≤ www.acmicpc.net 아 스시 먹고 싶다.. 🍣 배열을 두개 이어붙이는 식으로 원판을 회전하는 경우를 확인했다. n, d, k, c = map(int, input().split()) array = [] # 초밥 for _ in range(n): a = int(input()) array.append(a) # array 를 2배로 늘리기 array.extend(array) max_c..
확인 : 개발된 소프트웨어가 고객의 요구사항을 만족시키는지 확인 검증 : 개발된 소프트웨어가 개발자의 입장에서 명세서에 맞게 만들어졌는지 확인 어플리케이션 테스트의 기본 원리 살충제 패러독스 : 동일한 테스트 케이스로 동일한 테스트를 반복하면 더 이상 결함이 발견되지 않으므로, 테스트 케이스를 지속적으로 개선해야 한다. 파레토 법칙 : 앱 20%에 해당하는 코드에서 전체 80%의 결함이 발견된다. 오류-부재의 궤변 : 소프트웨어의 결함을 모두 제거해도 사용자의 요구 사항을 만족시키지 못하면 해당 소프트웨어는 품질이 높다고 말할 수 없다. 회복테스트 : 시스템에 여러가지 결함을 주어 실패하도록 한 후 올바르게 복구되는지 확인하는 테스트 강도테스트 : 시스템에 과도한 정보량이나 빈도 등을 부과하여 과부하 시..
·Algorithm (PS)
https://www.acmicpc.net/problem/6603 6603번: 로또 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있다. 첫 번째 수는 k (6 < k < 13)이고, 다음 k개 수는 집합 S에 포함되는 수이다. S의 원소는 오름차순으로 www.acmicpc.net 쉬어가는 경우의 수 문제~ 조합 모듈 combinations를 이용하면 간단하게 풀 수 있다. from itertools import combinations while True: data = list(map(int, input().split())) if len(data) == 1: break array = list(combinations(data[1:], 6)) array.sort() ..
·Algorithm (PS)
https://www.acmicpc.net/problem/11055 11055번: 가장 큰 증가 부분 수열 수열 A가 주어졌을 때, 그 수열의 증가 부분 수열 중에서 합이 가장 큰 것을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} 인 경우에 합이 가장 큰 증가 부분 수 www.acmicpc.net # https://www.acmicpc.net/problem/11055 n = int(input()) array = list(map(int, input().split())) dp = [i for i in array] # 초기값을 원소값으로 초기화 한다 for i in range(n): for j in range(i): if array[i]..
내가 보려고 정리하는 정처기 문제 오답노트.. Window의 특징 - 선점형 멀티태스킹 : 동시에 여러개의 프로그램을 실행하는 멀티 태스킹을 하면서 운영체제가 각 작업의 CPU 이용시간을 제어하여 응용 프로그램 실행 중 문제가 발생하면 해당 프로그램을 장제 종료시키고 모든 시스템 자원을 반환하는 방식 - OLE (Object- Linking and Embedding) : 다른 여러 응용 프로그램에서 작성된 문자나 그림 등의 개체를 현재 작성 중인 문서에 자유롭게 연결하거나 삽입하여 편집할 수 있게 하는 기능 UNIX media1.txt 파일의 소유자를 user12로 변경하는 명령문 chown user12 media1.txt Window 명령 프롬프트에서 현재 디렉터리의 파일 목록을 한 화면 단위로 표시 ..
·Algorithm (PS)
https://www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net dfs로도 풀수있다고 하는데, 문제보자마자 난 파이썬 permutation 모듈이 생각나서 그냥 그렇게 풀었는데 메모리초과도 안나고 시간초과도 안나서 통과했다 from itertools import permutations n, m = map(int, input().split()) array = [i for i in range(1, n+1)] # 1...n result = [] for i in l..
·Algorithm (PS)
https://www.acmicpc.net/problem/5212 5212번: 지구 온난화 첫째 줄에 지도의 크기 R과 C (1 ≤ R, C ≤ 10)가 주어진다. 다음 R개 줄에는 현재 지도가 주어진다. www.acmicpc.net 문제 아이디어 1. 이중 for문을 순회하면서 땅을 찾으면 상하좌우를 확인하여 인접 세칸 이상이 바다인지 확인한다 단!!!! 여기서 지도의 의미는 섬을 포함한 최소 직사각형이므로, 지도 범위인 (r, c)를 초과하면 바다이다 for i in range(r): for j in range(c): if array[i][j] == 'X': # 땅이면 인접 세칸 이상이 바다인지 확인하기 count = 0 for k in range(4): nx = i + dx[k] ny = j + d..
minjiwoo
'분류 전체보기' 카테고리의 글 목록 (48 Page)