>문제 www.acmicpc.net/problem/13301 13301번: 타일 장식물 대구 달성공원에 놀러 온 지수는 최근에 새로 만든 타일 장식물을 보게 되었다. 타일 장식물은 정사각형 타일을 붙여 만든 형태였는데, 한 변이 1인 정사각형 타일부터 시작하여 마치 앵무조개 www.acmicpc.net > 핵심 피보나치 수열 DP long long형 >풀이과정 피보나치 수열을 이용해서 풀 수 있다. n = 5일때 길이는 (5 * 2) + ((3+5) * 2) 다시말해 dp[n] = (dp[n] * 2) + ((dp[n-1] + dp[n]) * 2) (배열 인덱스가 0부터 시작하므로 아래 코드에는 n-1, n-2로 이용함.) 근데 이게 초등부 문제라는데 경악을 금치못했다 요즘 초등학생들은 천재들밖에 없나...
4.1) 리스트 numbers = [1, 2, 3, 4, 5, 6] words = ["가", "나", "다", "라", "마"] # 음의 인덱싱..!!! numbers[-1] >> 6 numbers[-6] >> 1 numbers[-7] >> Error.. # list slicing # :4는 4까지가 아니라 4앞까지인점 유념 print(numbers[1:4]) >> [2, 3, 4] print(numbers[:4]) >> [1, 2, 3, 4] print(numbers[4:]) >> [5, 6] # list 복사 x = [1, 2, 3, 4, 5] y = list(x) print(y) >> [1, 2, 3, 4, 5] # list 복사를 안하면.. x와 y가 같은 리스트를 가리키므로 의도치않은 문제가 생..
2.1) 옵셔널 파라미터(optional parameter) 파라미터에 값을 넘겨주지 않았을때 설정한 기본값으로 대체해서 동작하는 함수. def introduce(name, age, home="서울"): print("내 이름은 {}".format(name)) print("나이는 {}".format(age)) print("사는곳은 {}".format(home)) introduce("댕댕이", 30, "부산") >> ~~ 사는곳은 부산 ## optional parameter introduce("댕댕이", 30) >> ~~ 사는곳은 서울 주의) 옵셔널 파라미터는 여러개가 있어도 되지만 반드시 함수의 마지막 부분에 와야한다. 일반 파라미터 사이에 끼워넣으면 안됨. 2.2) 함수에서 변수를 사용하면 지역변수를 먼..
>문제 www.acmicpc.net/problem/12037 12037번: Polynesiaglot (Small1) In Case #1, suppose that the only vowel is a and the only consonant is h. Then the possible valid words of length 4 are: aaaa, aaha, ahaa, haaa, haha. In Case #2 (which would not appear in the Small dataset 1), suppose that the two vowels are a a www.acmicpc.net > 핵심 DP 자음 앞에는 모음만 올 수 있다 >풀이과정 와 어렵다 다이나믹 프로그래밍 기법을 사용하지만 내 머리는 다이나믹하..
>문제 www.acmicpc.net/problem/9625 9625번: BABBA 상근이는 길을 걷다가 신기한 기계를 발견했다. 기계는 매우 매우 큰 화면과 버튼 하나로 이루어져 있다. 기계를 발견했을 때, 화면에는 A만 표시되어져 있었다. 버튼을 누르니 글자가 B로 변했 www.acmicpc.net > 핵심 피보나치 수열 DP >풀이과정 DP 문제라길래 DP스럽게 풀어보려고 했다. 맞게 푸는건지 모르겠네 메모이제이션을 하기 위한 배열을 int형이 아니라 구조체 배열로 만들어서 A와 B의 개수를 따로따로 세기 편하도록 했다. 꼭 구조체가 아니더라도 A, B 두가지 경우밖에 없기 때문에 이차원배열을 통해서 구분해도 될 것 같다. 크게 어렵지는 않았다! >깨달은점 모르겠다 BABA! >코드 #define _..
git pull 명령어를 입력했는데 분명 리모트 레포지토리랑 로컬 레포지토리랑 데이터가 다른데! "Already up to date". (이미 최신 버전입니다) 라는 문구가 뜬다. 어떻게 해결해야할까? 구글링을 좀 해본 결과 git reset --hard [커밋ID]를 이용해서 그냥 덮어써버리는 것 같다.. 로컬에 있는 자료들을 보존하고 싶다면 git fetch를 해서 merge를 한 다음에 수정을 해야할 것 같은데 왜인지 git fetch도 먹통이다.. 골때리네! 근데 대체 왜 안되는건지 모르겠다. C언어 파일이 깨져서 그런 것 같기도 하고
>문제 11723번: 집합 첫째 줄에 수행해야 하는 연산의 수 M (1 ≤ M ≤ 3,000,000)이 주어진다. 둘째 줄부터 M개의 줄에 수행해야 하는 연산이 한 줄에 하나씩 주어진다. www.acmicpc.net > 핵심 배열 >풀이과정 쉽다. 처음엔 연결리스트로 할까 생각하다가 시간이 오래걸릴 것 같아서 그냥 배열로 때려박았다. >깨달은점 쉽다. >코드 #define _CRT_SECURE_NO_WARNINGS #include #include int main() { int i, m, e; char op[10]; int numset[21] = { 0 }; scanf("%d", &m); for (i = 0; i < m; i++) { scanf(" %s", op); if (strcmp(op, "add") ..