BUN 34981 A Matrix
来源:互联网 发布:c语言 原版书 编辑:程序博客网 时间:2024/05/28 22:07
每次从第一行选一个数,向下找递增的一条链。。。
#include <bits/stdc++.h>using namespace std;typedef long long LL;const int maxn = 100005;vector<int> vec[maxn];int cnt[maxn];int res[maxn], ans, n, m;void solve(int pos, int t){if(pos == m || cnt[pos+1] == 0 || vec[pos+1][cnt[pos+1]-1] < vec[pos][t]) return;res[ans++] = vec[pos+1][cnt[pos+1]-1];cnt[pos+1]--;solve(pos+1, cnt[pos+1]);}void work(){scanf("%d%d", &n, &m);int ok = 1;for(int i = 1; i <= n; i++) vec[i].clear();for(int i = 1; i <= m; i++) {scanf("%d", &cnt[i]);for(int j = 0; j < cnt[i]; j++) {int x;scanf("%d", &x);if(j && x < vec[i][j-1]) ok = 0;vec[i].push_back(x);}}if(!ok) {printf("No solution\n");return;}ans = 0;for(int i = vec[1].size()-1; i >= 0; i--) {res[ans++] = vec[1][i];solve(1, i);}if(ans != n) printf("No solution\n");else {for(int i = ans - 1; i >= 0; i--) printf("%d%c", res[i], i ? ' ' : '\n');}}int main(){int _;scanf("%d", &_);for(int i = 1; i <= _; i++) {printf("Case #%d: ", i);work();}return 0;}
0 0
- BUN 34981 A Matrix
- BNUOJ 34981 A Matrix
- bnu 34981 A Matrix(构造)
- IOS真机运行带有Notification Content target的时候证书报错This application or a bundle it contains has the same bun
- A. Beautiful Matrix
- CodeForces 364A Matrix
- 263A - Beautiful Matrix
- P30 (*) Transposing a Matrix
- Construct a Matrix FZU
- A tutorial on Matrix
- foj 1911 Construct a Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- BZOJ 4003 [JLOI2015]城池攻占 可并堆
- get/post方式调用http接口
- iOS手势识别器
- Android for MSM Project,Downloading and Building from Source
- 我的openwrt学习笔记(二十一):广域网IP地址获取_socket http
- BUN 34981 A Matrix
- sort的用法
- DOCTYPE中SYSTEM和PUBLIC区别
- 【图像处理】所谓的“快速积分图”,其实并不快
- DDoS态势报告 DDoS攻击两极分化
- hdu 5367 digger(线段树)
- Android 2D Graphics学习(二)、Canvas篇1、Canvas基本使用
- Leet——code 刷题_顺序
- json中null的处理