ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 백준 2839 - 설탕 배달
    백준 algorithm 2020. 6. 5. 23:02

    문제 설명

     

     

    => 브루트 포스 문제는 아니지만, 브루트 포스 문제로 해결하였습니다. 

     

     

    • 5를 3보다 더 많이 써야 효율적인 알고리즘입니다.

    • 5를 더 많이 쓰기 위해 이중for문의 안쪽에 5를 위치하였습니다. 

    • 그후 3를 바깥쪽 for문에 위치하였습니다.

    • 입력 받은 값과 i j와 3 5 를 곱한 값이 같은지 확인합니다.

    • 이중for문이 끝나도 원하는 값이 없을 경우 -1을 출력합니다. 

     

     

     

    <code>

    #include <iostream>
    #include <algorithm>
    #include <string>
    #include <vector>
    
    
    using namespace std;
    
    
    int main()
    {
        ios_base::sync_with_stdio(false);
        cin.tie(nullptr);
        cout.tie(nullptr);
        
        int N;
        cin >> N;
        
        int FiveLimit = (N / 5);
        int ThreeLimit = (N / 3);
        
        for(int i=0; i<=ThreeLimit; i++)
        {
            for(int j=0; j<=FiveLimit; j++)
            {
                if((3*i) + (5*j) == N)
                {
                    cout <<i+j<<'\n';
                    return 0;
                }
            }
        }
        cout <<-1<<'\n';
        return 0;
    }
    

     

     

    실행화면

     

    '백준 algorithm' 카테고리의 다른 글

    백준 13023 - ABCDE  (0) 2020.07.03
    백준 1759 - 암호만들기  (0) 2020.06.17
    백준 10973 - 이전 순열  (0) 2020.06.05
    백준 10972 - 다음 순열  (0) 2020.06.05
    백준 1316 - 그룹 단어 체커  (0) 2020.06.04

    댓글

Designed by Who.