본문 바로가기 메뉴 바로가기

je_record

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

je_record

검색하기 폼
  • 분류 전체보기 (128)
    • 회고 (3)
    • 안드로이드[Kotlin] (7)
    • 알고리즘 (53)
    • CS (42)
      • 컴퓨터네트워크 (26)
      • 인터넷DB응용 (9)
      • 운영체제 (7)
    • 백엔드 (23)
      • Java (3)
      • 데이터베이스 (3)
      • SpringBoot (11)
  • 방명록

나무자르기 (1)
[백준 14247번/c++] 나무자르기

알고리즘 그리디 알고리즘 정렬 풀이 나무 중 자라는 길이가 큰 것을 가장 나중에 자르도록 한다. 첫날 나무의 길이에 매일 자라는 길이만큼 더해지므로, 정수 ans 변수에 첫날 나무의 길이를 다 더해둔 후 매일 자라는 길이 * 자르기 전까지 자라난 일 수를 반복문을 통해 더해준다. 매일 자라는 길이는 오름차순 정렬 후 배열의 끝에서부터 사용하였다. 시간 초과 코드 grow 배열을 정렬하지 않고 굳이 max 값을 일일이 구하여 O(n^2) 시간복잡도가 되어 시간초과 발생 #include #include #include using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); // freopen("input.txt", "..

알고리즘 2022. 11. 15. 13:33
이전 1 다음
이전 다음

Blog is powered by Tistory / Designed by Tistory

티스토리툴바