• 티스토리 홈
  • 프로필사진
    홀쑥
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
홀쑥
  • 프로필사진
    홀쑥
    • 분류 전체보기 (57)
      • Language & Framework (14)
        • Java (1)
        • Python (13)
      • DataBase (4)
        • NoSQL (1)
        • RDBMS (3)
      • Big Data & Ecosystem (9)
        • Hadoop (5)
        • Hive (2)
        • Sqoop (1)
        • Zeppelin (1)
      • Data Engineering (1)
        • Airflow (1)
      • Cloud & DevOps (1)
        • AWS (0)
        • GCP (1)
      • Monitoring & Logging (2)
        • ElasticSearch (2)
      • Infrastructure (12)
        • OS (12)
        • Docker (0)
        • Kubernetes (0)
      • Algorithm & CS (7)
        • 백준 알고리즘 (6)
      • Troubleshooting (5)
        • 오류 모음 (5)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
        등록된 공지가 없습니다.
      # Home
      # 공지사항
      #
      # 태그
      # 검색결과
      # 방명록
      • [백준 알고리즘] 2869번 달팽이는 올라가고 싶다 Java
        2020년 06월 15일
        • 홀쑥
        • 작성자
        • 2020.06.15.:39

        달팽이가 막대기를 올라가고 싶단다.

        높이가 v 인 나무 막대를 달팽이가 올라가는데

        낮에는 a미터 올라가고 밤에는 b미터 미끄러진다.

        v : 높이

        a : 낮에 움직이는 거리

        b : 밤에 미끄러지는 거리

        d : 올라가는데 걸리는 날

        중요한 점은 낮에 올라가면 다시 미끄지지 않기 때문에 먼저 d 를 1 올려주고 v 를 a만큼 먼저 내리고 계산한다.

        ( a * d ) - ( b * d ) = ( v - a )

        ( a - b ) * d = ( v - a )

        d = ( v - a ) / ( a - b ) 이다

        나머지가 0이라면 ( v - a ) / ( a - b ) + 1 이 답이고

        나머지가 있다면 ( v - a ) / ( a - b ) + 2 가 답이다. 코드는

        import java.io.BufferedReader;
        import java.io.IOException;
        import java.io.InputStreamReader;
        import java.util.StringTokenizer;
        
        public class back2869 {
        
        	public static void main(String[] args) throws IOException {
        		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        		StringTokenizer st = new StringTokenizer(br.readLine());
        		long a = Long.parseLong(st.nextToken());
        		long b = Long.parseLong(st.nextToken());
        		long v = Long.parseLong(st.nextToken());
        		if((v-a)%(v-b)==0) {
        			System.out.println(((int) (((v-a)/(a-b))+1)));
        		}else {
        			System.out.println((int) (((v-a)/(a-b))+2));
        		}
        		br.close();
            }
        }

        처럼 작성했다

        다음글
        다음 글이 없습니다.
        이전글
        이전 글이 없습니다.
        댓글
      조회된 결과가 없습니다.
      스킨 업데이트 안내
      현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
      ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
      목차
      표시할 목차가 없습니다.
        • 안녕하세요
        • 감사해요
        • 잘있어요

        티스토리툴바