Koala - 9기/기초 알고리즘 스터디

https://www.acmicpc.net/problem/12780 12780번: 원피스 바야흐로 지금은 대해적 시대, 밀짚모자 해적단의 선장 교정이는 어린 시절 우연히 잊지 못할 한 마디를 들었다. 그것은 바로 해적 왕 골.D.상윤이 자신이 모은 모든 보물인 원피스를 위대한 항 www.acmicpc.net 문제분류 구현 문제분석 입력: 문자열 H 와 문자열 N H안에 N이 몇번 출현하는지를 세야한다. 시도1 H를 한 글자씩 검사하면서 N의 첫글자가 등장하면 H와 N을 한글자씩 검사하는 방법을 생각했다. 하지만 이 경우 문자열을 하나씩 검사하는데 쓰이는 인덱싱하는 변수(i)를 관리하는 것이 헷갈렸다. 예를들어, H가 INHAUNIVERSITY이고 N이 UNIV인 경우에는 i를 UNIV를 검사하는데 증가시..
문제 링크 https://www.acmicpc.net/problem/17263 문제 문제 해석 n개의 원소가 있는 배열을 오름차로 정렬했을 때 가장 오른쪽에 오는 수를 출력하는 문제이다. 즉, 배열에 입력될 원소 중 가장 큰 수를 출력하면 된다. 배열 속 원소의 개수인 n을 입력받고, n번 반복되는 반복문을 사용해서 원소들을 입력받아서 가장 큰 수를 변수에 저장한 뒤에 출력하면 되는 것이다. 코드 #include #include using namespace std; int main(){ int n, i, a; int b = 0; cin >> n; for (i = 0; i > a; if (a > b) { b = a; } } cout
문제 https://www.acmicpc.net/problem/12780 12780번: 원피스 바야흐로 지금은 대해적 시대, 밀짚모자 해적단의 선장 교정이는 어린 시절 우연히 잊지 못할 한 마디를 들었다. 그것은 바로 해적 왕 골.D.상윤이 자신이 모은 모든 보물인 원피스를 위대한 항 www.acmicpc.net 코드 풀이 문자열에서 n[0]인 부분을 찾으면 모든 n을 다 돌때까지 n과 일치하는 부분이 있는지 flag로 검사한다. flag=0이 된 이후 다시 n[0]을 찾을 때는 flag=1로 초기화를 해야한다.
https://www.acmicpc.net/problem/17219 17219번: 비밀번호 찾기 첫째 줄에 저장된 사이트 주소의 수 N(1 ≤ N ≤ 100,000)과 비밀번호를 찾으려는 사이트 주소의 수 M(1 ≤ M ≤ 100,000)이 주어진다. 두번째 줄부터 N개의 줄에 걸쳐 각 줄에 사이트 주소와 비밀번 www.acmicpc.net 문제 풀이 사이트주소 - 비밀번호 를 키 - 밸류 구조로 딕셔너리에 저장, 원하는 사이트를 입력하면 이에 맞는 키 값을 불러오는 방식으로 출력함. 문제 코드
문제 링크 11365번: !밀비 급일 당신은 길을 가다가 이상한 쪽지를 발견했다. 그 쪽지에는 암호가 적혀 있었는데, 똑똑한 당신은 암호가 뒤집으면 해독된다는 것을 발견했다. 이 암호를 해독하는 프로그램을 작성하시오. www.acmicpc.net 문제 문제 해석 입력받는 문장을 뒤집어 출력하는 문제이다. 코드 #include #include int main(void) { char password[502]; //암호 500자 + 개행문자 \n + 널문자 \0 = 502칸 while (1) { fgets(password, sizeof password, stdin); if (password[0] == 'E' && password[1] == 'N' && password[2] == 'D') break; passw..
https://www.acmicpc.net/problem/5363 5363번: 요다 첫째 줄에 문장의 수 N이 주어진다. 둘째 줄부터 N개의 줄에는 각 문장이 주어진다. 문장의 길이는 100글자 이내이다. 단어의 개수는 3개 이상이다. www.acmicpc.net 문제 해석 문장 맽 앞에 있는 두 단어를 맨 뒤로 보낸 다음 다시 출력하면 된다. 문제 풀이 input().split()을 이용해 단어를 여러개 받고 [:2] 와 [2:]을 이용해 새로운 문자열 [2:] + [:2]를 출력하면 된다. 전체 코드
1350번: 진짜 공간 (acmicpc.net) 1350번: 진짜 공간 첫째 줄에 파일의 개수 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 파일의 크기가 공백을 사이에 두고 하나씩 주어진다. 파일의 크기는 1,000,000,000보다 작거나 같은 음이 아닌 www.acmicpc.net 문제 문제코드 a= int(input()) arr = list(map(int, input().split())) b=int(input()) x=0 for i in range(a): if arr[i]!=0 and arr[i]
https://www.acmicpc.net/problem/6996 6996번: 애너그램 첫째 줄에 테스트 케이스의 개수(
이 문제는 2진수 -> 10진수 변환과 10진수 -> 2진수 변환 모두를 구현해야 하는 문제이다. 파이썬 내장 함수와 문자열 인덱싱을 통해 쉽게 구현할 수도 있지만, 직접 코드를 작성해보았다. https://www.acmicpc.net/problem/11179 11179번: 2진수 뒤집기 희연이는 스웨덴으로 이사하여 현재 학교를 다니고 있다. 1학년 교육과정은 중국에서 배웠고, 스웨덴과 중국 두 나라의 교육과정은 완전히 다르다. 희연이는 수학을 좋아한다. 하지만 지금은. www.acmicpc.net 💻 최종 코드 n = int(input()) b = [] x = 0 ans = [] c = 0 while n != 0: if n % 2 == 0: b.append('0') else: b.append('1') ..
1350번: 진짜 공간 첫째 줄에 파일의 개수 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 파일의 크기가 공백을 사이에 두고 하나씩 주어진다. 파일의 크기는 1,000,000,000보다 작거나 같은 음이 아닌 www.acmicpc.net 문제 설명 클러스터의 용량 $c\in\Bbb Z,\ c\geq0$과 파일의 용량 $f\in\Bbb Z,\ f\geq 0$에 대해 각 파일이 팔요로 하는 클러스터의 개수는 $(f-1)$을 $c$로 나눈 몫에 1을 더한 값이 된다. 이는 $f=0$일 때도 성립한다. 각 파일에 필요한 클러스터의 수의 총합에 클러스터의 크기를 곱하면 구하는 값이 된다. 소스 코드
1350번: 진짜 공간 (acmicpc.net) 1350번: 진짜 공간 첫째 줄에 파일의 개수 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 파일의 크기가 공백을 사이에 두고 하나씩 주어진다. 파일의 크기는 1,000,000,000보다 작거나 같은 음이 아닌 www.acmicpc.net 문제 어떤 파일 시스템에는 디스크 공간이 파일의 사이즈와 항상 같지는 않다. 이것은 디스크가 일정한 크기의 클러스터로 나누어져 있고, 한 클러스터는 오직 한 파일만 이용할 수 있기 때문이다. 예를 들어, 클러스터의 크기가 512바이트이고, 600바이트 파일을 저장하려고 한다면, 두 개의 클러스터에 저장하게 된다. 두 클러스터는 다른 파일과 공유할 수 없기 때문에, 디스크 사용 공간은 1024바이트가 ..
https://www.acmicpc.net/problem/10867 10867번: 중복 빼고 정렬하기 첫째 줄에 수의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. www.acmicpc.net 문제풀이 set을 이용해 중복을 삭제하고 오름차순으로 정렬 후 출력하면 되는 간단한 문제였다. 하지만 이 글을 작성하게된 이유는 문자열 정렬에 대한 실수를 공유하기 위해서이다. 처음에는 간단히 join으로 출력해야지~ 생각하고 string으로 입력을 받아 처리했다 n = int(input()) a = set(map(str,input().split())) print(' '.join(sorted(list(a)))) 하지만, 백준은..
KauKoala
'Koala - 9기/기초 알고리즘 스터디' 카테고리의 글 목록 (9 Page)