티스토리 뷰
접근방식
다이나믹 프로그래밍
풀이방식
런타임 에러나서 푼게 푼 것도 아니고, 처음에 잘못 접근해서 다른 코드들을 열시미 참조했음...ㅠ
최종해에 일부가 되는 작은 해들로 이뤄진 값을 구하는 문제기때문에 들어온 입력값이 될때까지 반복문을 돌면서 케이스별로 비교해서 작은 값으로 배열을 채우고 맨마지막에 배열의 끝값을 넘겨주면 된다
나는 그냥 틀렸다는 것보다도 런타임에러나 머 시간초과 이런게 나오면 대략 정신이 멍해지는데
최적화를 진짜진짜 못하겠음 열시미 공부해야지 사실 이렇게 알고리즘 푸는게 현타오는데
내가 푸는게 아닌 것처럼 여러 코드를 보고 공부하는 느낌이라 이게 푼다고 말해도 되는건지?라는 생각이 듬
그래두 시작한지 얼마 안돼서 그런거겠지...
공부하고 풀까 풀면서 공부할까 참조만하면서 공부하면 이게 공부가 되는게 맞나..암튼 난 병신
그래두 공부가 됐다능...
algorithm에 있는 min함수 알게됐고 cstring에 있는 memset이라는 함수를 사용하면 배열을 초기화?채울때 더 빠르게 채울수있다는 걸 알수있게됐다..ㅎㅎ
//첨에 잘못푼 코드
#include<iostream>
using namespace std;
int main() {
int number, count=0;
cin >> number;
getchar();
while (number != 1) {
if (number % 3 == 0) {
if (number == 3) { count++; break; }
number/= 3;
count++;
}
else if (number % 2 == 0) {
if (number == 2) { count++; break; }
number /= 2;
count++;
}
else {
if (number == 1) {break;}
number--;
count++;
}
}
cout << count;
}
//틀렸습니다는 안나오지만 런타임에러가 나는 코드
런타임 에러란 멀까? 다른 분이 같은 문제 코드짜신걸 봤는데 코드는 똑같은데 그 분은 클래스랑 함수로 나눠서 푸셨고 나는 그냥 풀었는데 그 분 코드는 런타임에러가 안난듯..
클래스화하면 런타임에러가 안나는 이유가 멀까? 공부해보자잉
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
int main() {
int number;
// int array[100001];
int* array;
cin >> number;
if (number == 1) { cout << 0; return 0; }
array = new int[number];
// memset(array, 0, sizeof(array));
array[1] = 0;//배열에 들어있는 값이 count
for (int i = 2; i <= number; i++) {
array[i] = array[i - 1] + 1;
if (i % 2 == 0) { array[i] = min(array[i],array[i/2]+1); }
if (i % 3 == 0) { array[i] = min(array[i],array[i/3]+1); }
}
cout << array[number];
return 0;
}
'코딩 조아 > 알고리즘시러' 카테고리의 다른 글
기쁜소식 (0) | 2020.12.27 |
---|---|
11729::하노이 탑 이동순서 (0) | 2020.12.27 |
9093::단어 뒤집기 (0) | 2020.12.20 |
2839::설탕 배달 (0) | 2020.12.16 |
11047::동전0 (0) | 2020.12.15 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 정보보안공부
- 드래그선택이상
- 씨제이유닛
- 멘토링
- 4949번
- 디스크포렌식
- 컴공
- 백준
- 컴공3학년
- 개좋아
- 정보보안
- SUA
- 에러
- 해킹
- 서울42
- 대학생방학
- 균형잡힌세상
- 포렌식스터디
- CJ유닛
- 돈줘
- QUIC
- 많관부
- Figma 에서 음성 첨부하는 방법
- 안드로이드스튜디오
- 드래그커서이상
- CJ UNIT
- 그리디 알고리즘
- 종강
- 대학생
- 포렌식
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
글 보관함