首頁 C++C++ 約瑟夫問題2021年12月18日290 views1 minute read #include <iostream> using namespace std; int dp[100]; int f(int n, int k){ if(dp[n] != 0) return dp[n]; int a = f(n-1, k)+k; while(a>n) a-=n; dp[n] = a; return dp[n]; } int main(){ int n, k; cin >> n >> k; dp[1] = 1; cout << f(n, k) << '\n'; }