Junior-Developer
Home
  • Category (316)
    • 문제풀이 (270)
      • 백준oj (201)
      • 프로그래머스 (53)
      • 명품 자바 프로그래밍(개정4판) (11)
      • 구름 (5)
    • 알고리즘 (6)
    • Node.js (2)
    • 체크리스트 (37)
블로그 내 검색
Home

Junior-Developer

1일 1커밋! 1일 1 백준!

  • 문제풀이/백준oj

    [백준OJ] 13305번 주유소

    2021. 7. 31.

    by. Hyeon-Uk

    반응형

    https://www.acmicpc.net/problem/13305

     

    13305번: 주유소

    표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1

    www.acmicpc.net


     

    -풀이-

    싼 가격의 도시를 만날때까지 현재까지 만나왔던 도시중 가장 싼 값의 기름을 이용하여 도로를 주행한다. 더 값싼 도시를 만난다면, 가장 싼 값의 기름을 갱신시켜준뒤, 도로를 주행하면된다.

     

    -시간복잡도-

    O(N)

     

    -코드-

    #include <iostream>
    #include<algorithm>
    using namespace std;
    
    int road[1000001] = { 0 };
    int n;
    long long min_cost = 1000000001;
    long long result = 0;
    
    int main(){
    	ios::sync_with_stdio(false);
    	cin.tie(NULL);
    	cout.tie(NULL);
    	
    	cin >> n;
    	for (int i = 0; i < n - 1; i++) {
    		cin >> road[i];
    	}
    	for (int i = 0; i < n; i++) {
    		long long city;
    		cin >> city;
    
    		min_cost = min(min_cost, city);
    		result += min_cost * road[i];
    	}
    	cout << result;
    	return 0;
    }
    반응형
    저작자표시 (새창열림)

    '문제풀이 > 백준oj' 카테고리의 다른 글

    [백준OJ] 15961번 회전 초밥  (0) 2021.08.02
    [백준OJ] 12978번 스크루지 민호 2  (0) 2021.08.01
    [백준OJ] 18769번 그리드 네트워크  (0) 2021.07.29
    [백준OJ] 7490번 0 만들기  (0) 2021.07.26
    [백준OJ] 18809번 Gaaaaaaaaaarden  (0) 2021.07.24

    댓글

    관련글

    • [백준OJ] 15961번 회전 초밥 2021.08.02
    • [백준OJ] 12978번 스크루지 민호 2 2021.08.01
    • [백준OJ] 18769번 그리드 네트워크 2021.07.29
    • [백준OJ] 7490번 0 만들기 2021.07.26
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

Today

Total

Powered by ⓒ Kakao Corp.

Designed by Nana
블로그 이미지
Hyeon-Uk

티스토리툴바