試験符号化の準備


バイナリナビゲーション
  • パラメータ測定:最適解を求めるときに決定問題(YesまたはNo)に変換して解決
    ケーキの問題...非線形バイナリナビゲーションソリューション
  • で並べ替えられたベクトルから4個の数、5個の数を求めた場合、low boud/uper boundを確認して減算する.
  • 2018コードテスト問題3
    #include <iostream>
    #include <vector>
    #include <string>
    #include <list>
    
    using namespace std;
    
    list<string> cache;
    
    int get_data(string city, int cacheSize)
    {
        int time;
    
        auto it = find(cache.begin(), cache.end(), city);
        if (it != cache.end()) { // exist
            time = 1;
            cache.erase(it);
        }
        else {
            time = 5;
        }
        cache.push_back(city);
    
        if (cache.size() > cacheSize) {
            cache.erase(cache.begin());
        }
    
        return time;
    }
    
    int main()
    {
        int cacheSize=2;
        vector<string> cities = {"Jeju", "Pangyo", "Seoul", "NewYork", "LA",
            "SanFrancisco", "Seoul", "Rome", "Paris", "Jeju", "NewYork", "Rome"};
    
        int sum = 0;
        for (int i = 0; i < cities.size(); i++) {
            sum += get_data(cities[i], cacheSize);
        }
    
        cout << sum << endl;
    
        return 0;
    }