C++/백준 C++

C++ 13305 주유소 [그리드, 자료형 범위]

CE : 하랑 2024. 10. 28. 20:29

 

 

코드

17점

#include <iostream>
#include <vector>

int main()
{
	std::vector<int> CityLen;
	std::vector<int> oil;

	long long result = 0;
	long long sum = 0;
	int N;

	std::cin >> N;

	CityLen.resize(N - 1);
	oil.resize(N);

	for (int i = 0; i < N-1; i++)
	{
		std::cin >> CityLen[i];
		sum += CityLen[i];
	}

	for (int i = 0; i <N; i++)
	{
		std::cin >> oil[i];
	}

	result = oil[0] * sum;

	for (int i = 0; i < N-1; i++)
	{
		long long checksum = sum;
		long long checknum = 0;
		for (int j = 0; j <= i; j++)
		{
			checknum += (oil[j] * CityLen[j]);

			checksum -= CityLen[j];
		}

		checknum += (CityLen[i] * checksum);

		if (result <= checknum)
		{
			break;
		}
		else
		{
			result = checknum;
		}
	}

	std::cout << result;
}

 

 

58점

#include <iostream>
#include <vector>

int main()
{
	std::vector<int> dist;
	std::vector<int> oilcost;

	long long result = 0;
	int CurCost = 0;

	int N;

	std::cin >> N;

	dist.resize(N - 1);
	oilcost.resize(N);

	for (int i = 0; i < N-1; i++)
	{
		std::cin >> dist[i];
		
	}

	for (int i = 0; i <N; i++)
	{
		std::cin >> oilcost[i];
	}

	CurCost = oilcost[0];

	for (int i = 0; i < N-1; i++)
	{
		if (CurCost > oilcost[i])
		{
			CurCost = oilcost[i];
		}

		result += (CurCost * dist[i]);
	}

	std::cout << result;
}

 

 

100 점

#include <iostream>
#include <vector>

int main()
{
	std::vector<int> dist;
	std::vector<int> oilcost;

	long long result = 0;
	long long CurCost = 0;

	int N;

	std::cin >> N;

	dist.resize(N-1);
	oilcost.resize(N);

	for (int i = 0; i < N-1; i++)
	{
		std::cin >> dist[i];
		
	}

	for (int i = 0; i <N; i++)
	{
		std::cin >> oilcost[i];
	}

	CurCost = static_cast<long long>(oilcost[0]);
	
	for (int i = 0; i < N-1; i++)
	{
		if (CurCost > static_cast<long long>(oilcost[i]))
		{
			CurCost = static_cast<long long>(oilcost[i]);
		}

		result += (CurCost * static_cast<long long>(dist[i]));
	}

	std::cout << result;
}

'C++ > 백준 C++' 카테고리의 다른 글

C++ 1009 분산 처리 [구현]  (0) 2024.11.06
C++ 1475 방 번호 [구현]  (0) 2024.11.05
C++ 3190 뱀 [시물레이션]  (0) 2024.10.26
C++ 15486 퇴사 2 [DP]  (0) 2024.10.25
C++ 14889 스타트와 링크 [DFS, 백트래킹]  (0) 2024.10.24