美團點評CodeM資格賽部分問題題解

2022-09-11 14:21:28 字數 2035 閱讀 8255

注意的點是任何時刻一張優惠券只能存在乙個,如果同一張優惠券還沒被使用又購入,就看上一次購入與該次購入之間有沒有問號可以替代使用,使用優惠券同理。

#include #include #include #include #include #include #include #include using namespace std;

int len;

int main()

else else

}last_in[x] = i;

} else if (line[0] == 'o') else else

}last_out[x] = i;

} else if (line == "?")

}cout << -1 << endl;

}return 0;

}

挺好的題。我的做法是建圖——將每個小區抽象為圖節點,小區i有兩條出邊,出邊a到達小區i+a[i],出邊b到達小區i+b[i](如果到達的小區不存在就不用加邊)。問題即轉化為在乙個有向圖中,判斷節點0n-1是否可達,如果可達,每次盡量走邊a(這樣字典序才是最小的)。

#include #include #include #include #include #include #include #include #include using namespace std;

int n;

void solve(vector& a, vector& b, vector>& adj, vector>& prevs)}}

// go from s

int cur = s;

if (!can[cur])

vectorvis(n, false);

vis[cur] = true;

string res = "";

while (cur != t) else

if (to == t)

if (can[to])

vis[to] = true; // 一開始由於這句沒加上,導致爆空間,浪費了四次提交機會。。

res += select_;

cur = to;

break;}}

}}int main()

}for (int i = 0; i < n; ++i)

}solve(a, b, adj, prevs);

return 0;

}

#include #include #include #include #include #include #include #include #include using namespace std;

long long l, r;

long long compute_single(long long low, long long high, long long n)

} else

if (n / left == x) lb = left;

else if (n / right == x) lb = right;

// ub

left = low; right = high;

while (left + 1 < right)

if (n / right == x) ub = right;

else if (n / left == x) ub = left;

//cout << lb << " " << ub << " " << x << endl;

ret += (ub - lb + 1) * x;}}

return ret;

}void compute(long long n, vector& ans)

}}void solve()

}int main()

CodeM 2017美團點評程式設計大賽資格賽

時間限制 c c 1秒,其他語言2秒 空間限制 c c 32m,其他語言64m 美團外賣的品牌代言人袋鼠先生最近正在進行 研究。他有兩段音訊,每段音訊是乙個表示音高的序列。現在袋鼠先生想要在第二段音訊中找出與第一段音訊最相近的部分。具體地說,就是在第二段音訊中找到乙個長度和第一段音訊相等且是連續的子...

美團 CodeM 資格賽 數碼 詳解

time limit 1 sec memory limit 256 mb description 給定兩個整數 l 和 r,對於任意 x,滿足l x r 把 x 的所有約數全部寫下來。對於每個寫下來的數,只保留最高位的那個數碼。求 1,9 中每個數碼出現的次數。輸入格式 輸入一行兩個整數 l 和 r...

美團codeM資格賽 優惠券

優惠券時間限制 1秒 空間限制 32768k 某次抽查時,發現有硬碟故障,歷史日誌中有部分行損壞,這些行的存在是已知的,但是行的內容讀不出來。假設損壞的行可以是任意的優惠券的購買或者使用。現在問這次抽查中業務是否正確。若有錯,輸出最早出現錯誤的那一行,即求出最大s,使得記錄1到s 1滿足要求 若沒有...