| Run ID | Author | Problem | Lang | Verdict | Score | Time | Memory | Code Length | Submit Time |
|---|---|---|---|---|---|---|---|---|---|
| 111306 | CBCode | 递增子序列 | C++ | Wrong Answer | 50 | 0 MS | 248 KB | 867 | 2023-11-19 18:13:01 |
#include <bits/stdc++.h> using namespace std; #define all(v) (v).begin(), (v).end() typedef long long ll; vector<int> a,path; set<vector<int>> ans; int n; void dfs(int i) { if(!path.empty() && a[i] >= path.back()) { path.push_back(a[i]); ans.insert(path); path.pop_back(); } if(i < n-1) { path.push_back(a[i]); for(int j = i+1; j < n; j++) { dfs(j); } path.pop_back(); } } int main() { cin >> n; a.resize(n); for(int i = 0; i < n; i++) { cin >> a[i]; } for(int i = 0; i < n; i++) { dfs(i); } for(auto it = ans.rbegin(); it != ans.rend(); it++) { for(int i = 0; i < (*it).size(); i++) { cout << (*it)[i] << ' '; } cout << '\n'; } return 0; }