【BZOJ】2760: [JLOI2011]小A的烦恼【字符串模拟】
2760: [JLOI2011]小A的烦恼
Time Limit: 10 Sec Memory Limit: 128 MB
Submit: 406 Solved: 258
[Submit][Status][Discuss]
Description
| a | a | a |
| b | b | |
| c | c |
| a | b | |||||
| a1 | b1 | c1 | a1 | b1 | c1 | d1 |
| a2 | b2 | a2 | b2 | |||
| a3 | b3 | c3 | ||||
| a4 |
Input
第一行有一个整数N(1≤N≤100),表示有N个文件。
以下N个数据块的第一行有一个整数M (1≤M≤100)和一个字符串S (1≤length(S)≤100),M表示文件的行数,S表示文件名。
N个数据块的下面M行中,每一行是一个字符串T(1≤length(T)≤100),T只包含小写字母和“,”。
Output
输出把N个文件的数据合到一个文件的结果。
Sample Input
2 a
a1,b1,c1
a2,b2
4 b
a1,b1,c1,d1
a2,b2
a3,b3,c3
a4
Sample Output
a1,b1,c1,a1,b1,c1,d1
a2,b2,,a2,b2,,
,,,a3,b3,c3,
,,,a4,,,
Solution
模拟题!
定了一个$flag$,表示第$i$行第$j$列这一格有没有东西。
每次将列数取max往后平移即可。
本来以为自己乱yy的$string$过不了的QAQ
结果调了5分钟就a掉了!!
气死$Abyssful$是我的人生目标!!
Code
#include<bits/stdc++.h>
using namespace std; int n, m, flag[][], cnt[], lin, row, num[];
char a[];
string s;
string qaq[][]; int main() {
scanf("%d", &n);
int len = , ma = ;
for(int i = ; i <= n; i ++) {
scanf("%d", &m);
scanf("%s", a);
flag[][++cnt[]] = ;
qaq[][cnt[]] = a;
int tmp = ;
for(int j = ; j <= m + ; j ++) {
scanf("%s", a);
int len = strlen(a);
num[j] = ;
for(int k = ; k < len; k ++) {
char t = a[k];
if(t != ',') s = s + t;
else {
num[j] ++;
cnt[j] ++;
qaq[j][cnt[j]] = s;
flag[j][cnt[j]] = ;
s.clear();
}
}
num[j] ++;
cnt[j] ++;
qaq[j][cnt[j]] = s;
flag[j][cnt[j]] = ;
s.clear();
tmp = max(num[j], tmp);
}
lin = max(lin, m + );
row += tmp;
for(int j = ; j <= ; j ++) cnt[j] = row;
}
for(int i = ; i <= lin; i ++) {
for(int j = ; j < cnt[i]; j ++) {
if(flag[i][j]) cout << qaq[i][j];
printf(",");
}
if(flag[i][cnt[i]]) cout << qaq[i][cnt[i]];
printf("\n");
}
}
【BZOJ】2760: [JLOI2011]小A的烦恼【字符串模拟】的更多相关文章
- 题解【洛谷P5483】[JLOI2011]小A的烦恼
我们可以灵活运用\(C++\)的语法来解决此题. 解释一下代码中会出现的语法: \(string::iterator\ it\)表示定义了一个\(string\)类型的迭代器\(it\),\(^*it ...
- 「BZOJ 3280」小R的烦恼
题目链接 戳我 \(Solution\) 这道题很像餐巾计划啊. 首先将每天拆成\(x\)和\(x'\),\(S->x\)流量为\(a_i\),费用为\(0\)表示一天下来有\(a_i\)个濒死 ...
- 【模拟】bzoj2760 [JLOI2011]小A的烦恼
注意细节和初始化. #include<cstdio> #include<string> #include<algorithm> #include<iostre ...
- 【BZOJ】【3280】小R的烦恼
网络流/费用流 和软件开发那题基本相同,只是多加了一个“雇佣研究生”的限制:不同价格的研究生有不同的数量…… 那么只需加一个附加源点,对每一种研究生连边 S->ss 容量为l[i],费用为p[i ...
- hunnu 小明的烦恼——找字符串
http://acm.hunnu.edu.cn/online/?action=problem&type=show&id=11544&courseid=0 小明的烦恼——找字符串 ...
- BZOJ 3280: 小R的烦恼 & BZOJ 1221: [HNOI2001] 软件开发
3280: 小R的烦恼 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 399 Solved: 200[Submit][Status][Discuss ...
- BZOJ3280: 小R的烦恼
题解: 随便建一下图费用流就可以过吧... 代码: #include<cstdio> #include<cstdlib> #include<cmath> #incl ...
- 《Mysql 公司职员学习篇》 第一章 小A的烦恼
第一章 小A的烦恼 ----- 为什么学习数据库 和 如何选择数据库 小A是某公司的职员,公司数据部的员工,平常的大小工作,完全离不开EXCELL,而最近小A却越来越苦恼,不由的向好朋友小Y吐槽.小 ...
- hiho#1513 : 小Hi的烦恼 五维偏序
hiho#1513 : 小Hi的烦恼 五维偏序 链接 hiho 思路 高维偏序用bitset,复杂度\((\frac{n^2}{32})\) 代码 #include <bits/stdc++.h ...
随机推荐
- java数字转字符串前面自动补0或者其他数字
/** * Java里数字转字符串前面自动补0的实现. * * @author xiaomo * */ public class TestStringFormat { public ...
- go 匿名函数和闭包
匿名函数 1. 函数也是一种类型,因此可以定义作为一个函数类型的变量 package main import "fmt" // 函数作为参数 func add(a, b int) ...
- aarch64_l3
librdmacm-utils-1.1.0-4.fc26.aarch64.rpm 2017-02-12 07:12 87K fedora Mirroring Project libreadline-j ...
- 【不知道是啥的NOIP模拟赛】网络入侵
题意是这样的: 给你一棵树,每个边有一个初始的0/1边权.你希望把它弄成一个给定的样子. 你每次可以选一条树链取反,然后问你最少要操作几次. ----------------------------- ...
- python网络编程-线程队列queue
一:线程queu作用 Python中,queue是线程间最常用的交换数据的形式. 队列两个作用:一个是解耦,一个是提高效率 二:语法 1)队列的类 class queue.Queue(maxsize= ...
- XP远程连接Win10,提示【远程计算机需要网络级别身份验证,而您的计算机不支持该验证】
最近电脑安装了Win10系统,在办公室可以通过其他电脑远程,但是回去后使用自己的电脑(XP系统)进行远程提示失败, 提示[远程计算机需要网络级别身份验证,而您的计算机不支持该验证],然后上网查找资料, ...
- Codeforces 948C Producing Snow(优先队列+思维)
题目链接:http://codeforces.com/contest/948/problem/C 题目大意:给定长度n(n<=1e5),第一行v[i]表示表示第i堆雪的体积,第二行t[i]表示第 ...
- ROS + Caffe 机器人操作系统框架和深度学习框架笔记 (機器人控制與人工智能)
ROS + Caffe,这里以环境中物体识别为示例,机器人怎么知道环境里面有什么呢? [0.0567392 - n03376595 folding chair][0.0566773 - n040999 ...
- 20165203 学习基础和C语言基础调查
一.技能学习经验及体会 对于课外技能来说,我对很多领域都略知一二,但涉足不深,例如体育领域.摄影领域.绘画领域.书法领域等等,我所能拿得出手的就是体育领域的乒乓球了.娄老师的作业题目让我的思绪又回到了 ...
- gtk+学习笔记(六)
今天用到了滚动窗口和微调按钮,根据网上的信息,简单总结下用法. 滚动窗口只能添加一个控件到其中 scrolled=gtk_scrolled_window_new(NULL,NULL); /*创建滚动窗 ...