분류 전체보기

-문제 -풀이 주어진 DNA배열들의 각 자리별 DNA물질의 빈도를 체크한다. 각 자리별 가장 많은 빈도의 물질을 구하고, 이를 자리별로 연결하면 DNA s를 얻어 낼 수 있다. 이때 DNA s를 구성하는데 사용되지 않은 물질은 Hamming distance를 발생한다. 그래서 각 자리별 성분의 빈도수를 확인할때 가장 큰 빈도는 s의 물질로 취하고, 나머지 물질들의 빈도수의 합은 결과적으로 Hamming distance의 총합이 된다. -코드 #include #include #include #include using namespace std; int main(){ int N, M; cin >> N >> M; string arry[N]; for(int i = 0 ; i > ar..
풀이 순열을 사용한 완전탐색 기법 이용 순환 첫번째 값을 1~n까지 진행하여 모든 순열을 표시해주면 되는데 algorithm헤더의 next_permutation을 이용하여 편리하게 모든 순열을 구할 수 있었다. vector에 1~n까지 차례로 값을 넣어주고 next_permutation을 이용해 순열을 구하는 코드이다. 코드 #include #include #include using namespace std; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; cin >> n; vector p(n); for (int i = 1; i
https://www.acmicpc.net/problem/9663 문제 N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N이 주어진다. (1 ≤ N < 15) 출력 첫째 줄에 퀸 N개를 서로 공격할 수 없게 놓는 경우의 수를 출력한다. main ideas 1. 어차피 matrix로 두어도 같은 행과 열에는 퀸을 못 두므로 이차원배열이 아니라 일차원 배열로 풀 수 있다. 2. 퀸이 있는 곳과 같은 행, 같은 열, 대각선에는 다른 퀸을 놓지 못한다. 따라서 일차원 배열의 i 번째 열에 퀸을 놓고, 열이 겹치거나 대각선에 있다면 중지한다. (backtracking) 이..
https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net 문제분석 소스코드 input = __import__('sys').stdin.readline N = int(input()) bigBag = N // 5 while bigBag >= 0: if (N - bigBag * 5) % 3 == 0: print(bigBag + ((N - bigBag * 5) // 3)) break if bigBag == 0 and N % 3 != 0: print(-1) break big..
1. 문제 1051번: 숫자 정사각형 N×M크기의 직사각형이 있다. 각 칸에는 한 자리 숫자가 적혀 있다. 이 직사각형에서 꼭짓점에 쓰여 있는 수가 모두 같은 가장 큰 정사각형을 찾는 프로그램을 작성하시오. 이때, 정사각형은 행 www.acmicpc.net 2. 해결방법 - 완전 탐색을 이용했다 ! N,M은 50보다 작거나 같은 자연수이다. 그럼 N*M정사각형 좌표 하나씩을 다 탐색해봤자 25000~ 완전 탐색을 하기엔 충분한 숫자라고 판단했다. - 우선 사각형을 2중 리스트로 입력받는다. - k(사각형 길이 탐색) 변수를 두고 i,j(사각형 좌표)에서 (i, j) , (i,j+k) , (i+k, j), (i+k, j+k)가 같은 k를 탐색한다. - 가장 큰 k로 계속 side 갱신 !! 3. 코드 n,..
[Problem] [Solution] 예시) 크기가 2인 도미노 세트에 찍혀 있는 점의 개수를 구해보자. 윗칸에 찍히는 점의 개수가 0인 경우: 아랫칸에 찍히는 점의 개수 0개, 1개, 2개 윗칸에 찍히는 점의 개수가 1인 경우: 아랫칸에 찍히는 점의 개수 1개, 2개 윗칸에 찍히는 점의 개수가 2인 경우: 아랫칸에 찍히는 점의 개수 2개 따라서 (0+0) + (0+1) + (0+2) + (1+1) + (1+2) + (2+2) = 12로 총 12개가 답이다. 문제로 다시 돌아가 크기가 N인 도미노 세트에 찍혀 있는 점의 개수를 구해보자. 1. 정수형 변수 n을 초기화한다. 2. n값을 입력 받는다. 3. 점의 개수를 저장할 정수형 변수 sum을 0으로 초기화 한다. 4. for문을 활용하여 0부터 n까지..
문제 https://www.acmicpc.net/problem/2193 2193번: 이친수 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않 www.acmicpc.net Algorithm 1번 규칙에 의해 N=1일때 이친수는 1개[1]이고,2번 규칙에 의해 N=2일때 이친수는 1개[10]가 된다. N=3일때는 N=2일때 이친수의 끝자리가 0이므로 [100,101]이 나올수 있으므로 2개이다. N=4일때는 N=3일때 이친수의 끝자리가 0일때는 [1000,1001]이 나오고, 1일때는 [1010]이 나오게 된다. N이 점점 커져서 k일때를 가정해보자...
https://www.acmicpc.net/problem/1018 1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 문제분석 소스코드 import sys N, M = map(int,input().split()) chess = [] result = [] for i in range(N): chess.append(list(sys.stdin.readline().strip())) for i in range(0,N-7): for j in range(0,M-7): count1 = 0 count2 = 0 for k i..
정답코드 # 복습 횟수:0, 00:30:00, 복습필요X from copy import deepcopy answer = 10 def dfs(begin, target, words, cnt, visited: list): global answer # 탈출 조건 if begin == target: answer = min(answer, cnt) return for i in range(len(words)): if visited[i] == 1: continue check = [] for j in range(len(words[i])): if begin[j] != words[i][j]: check.append(j) if len(check) == 1: visited[i] = 1 # 방문처리 tmp = deepcopy(be..
https://www.acmicpc.net/problem/1895 1895번: 필터 숫자 9개가 오름차순이나 내림차순으로 정렬되어 있을 때, 중앙값은 다섯 번째 숫자이다. 예를 들어, 1, 3, 4, 1, 2, 6, 8, 4, 10의 중앙값은 4이다. (1 ≤ 1 ≤ 2 ≤ 3 ≤ 4 ≤ 4 ≤ 6 ≤ 8 ≤ 10) 이미지 I는 www.acmicpc.net 문제 코드 문제 풀이 입력받은 픽셀들을 4중 for문을 통해 필터링된 lst 를 구한 후, 정렬하여 중간값인 lst[4] 를 B에 추가. B의 값 중 T 보다 큰 값의 갯수를 구하여 출력.
규칙 - 문제 인증, 블로그 포스팅, 모의테스트 참여를 하지 않을시 각각 활동비에서 -1000원씩 차감 - 학회 활동이 끝난 후, 스터디 우수 참여자에게 차감된 활동비를 N분의 1로 나눠서 지급 - 스터디 우수 참여자 기준은 남은 활동비의 내림차순으로 정렬하여 가장 높은 참여자들로 선정 신재우 - akaps6768 이근우 - player_geun 전영서 - 20wjsdudtj 전준휘 - jjh63360 허윤석 - ssfic3380 문제 인증 1주차 2주차 3주차 4주차 5주차 6주차 7주차 8주차 신재우 O O O O O O O 이근우 O O O O O O O O 전영서 O O O 전준휘 △ 허윤석 모의 테스트 참여 1주차 2주차 3주차 4주차 5주차 6주차 7주차 8주차 신재우 O O O O O O O..
규칙 - 문제 인증, 블로그 포스팅, 모의테스트 참여를 하지 않을시 각각 활동비에서 -1000원씩 차감 - 학회 활동이 끝난 후, 스터디 우수 참여자에게 차감된 활동비를 N분의 1로 나눠서 지급 - 스터디 우수 참여자 기준은 남은 활동비의 내림차순으로 정렬하여 가장 높은 참여자들로 선정 김경래 - future0610 김남수 - 김도욱 - kduk 김보인 - charles1236 김재욱 - kjyook 김재혁 - jankim7878 김태우 - rereers1125 노유림 - elice100479 박준용 - ezenjun 염진섭 - 유완규 - beans3142 윤여빈 - yeobin03 이영진 - leesu0229 이우현 - brard111 이은주 - leunju217 임승현 - kdlatmdgus 장승우 ..
KauKoala
'분류 전체보기' 카테고리의 글 목록 (80 Page)