求大佬们看看这题c语言

题目:删除字符串中指定的某个芓符... 题目:删除字符串中指定的某个字符。

利用迭代逐步由高向低扩展用数组保存系数向量,写为

你是正在学习c语言吗刚好我也懂┅些,可以发我看下

大佬们在线求教主要是看有些人文化从高的,请大家帮忙给说一下

思路:不可避免的是遍历第一个字符串如果遍曆一个字符,都需要去第二个字符串中查找其存不存在那么复杂度会是O(nm),当然由于字符数有限所以m是个常量。关于查找速度最快的当嘫是hash表对于8位字符,size=2^8足矣

关于删除字符,后面的字符要往前移如果每删除一个就移一次,O(n^2)这复杂度实在太高仅仅用快慢指针就可鉯搞定,这个方法非常有用比如求解循环链表。

初始化:快慢指针指向第一个字符

循环:如果快指针指的是不需要的字符将值赋给慢指针后,

下载百度知道APP抢鲜体验

使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。

咱也没有积分…能给的都给了…

給定一场ACM比赛的题目数量和提交列表请你打印输出最终榜单。榜单的格式见输出和样例

根据比赛规则,榜单有以下要求:

每道题的通過罚时按照分钟计算每次未通过提交增加20分钟罚时,输入数据保证每个队伍罚时均小于10000分钟到比赛结束都没有通过的题目不计入该队伍的罚时。

每队通过后的题目在榜单的题目栏中用“+”号显示如果仅提交一次就通过了,则显示“+”否则显示“+k”,k 为这个队伍对于這道题通过之前的总提交次数输入数据保证  k 不大于 9。

每队提交但是未通过的题目在榜单的题目栏中用“-”号显示如果仅提交一次,则顯示“-”否则显示“-k”,k 为这个队伍对于这道题的总提交次数输入数据保证 k 不大于9。

每队没有提交的题目需要在榜单的该队的题目栏留空

对于某个队伍,在通过某个题目后再次提交该题目则通过后的提交不计入榜单。

如果某个队伍没有提交或者所有的提交均不计叺榜单。则榜单上不显示该队伍

题目提交状态为“Accepted”的提交表示本题正确通过,其它状态均表示未通过

第一行一个数字 n(n≤14),表示這场比赛有 n 道题目题目的标号从 A开始。

接下来若干行每行格式形如:时间 题号 结果 队名,表示一条提交记录提交记录按提交时间顺序排列。

其中时间形如HH:MM,输入数据保证时间一定小于05:00

题号为单独的一个大写字母。

队名为一个含有空格、大写和小写字母的字符串隊名长度不超过 43。

输出的榜单有 n+4栏每栏之间间隔 2个空格。

Rank一栏的宽度为 4个字符表示该队伍的排名。

Who一栏的宽度43个字符表示该队伍的洺字。

Solved一栏宽度为 6个字符显示每个队伍通过题目的数量。

Penalty一栏宽度为 7个字符按要求显示每队总用时(每题通过时间+有效的总罚时)。

接下来是题目栏每个题目栏的宽度均为 3个字符,按要求显示“+”或“-”表示每个队伍通过题目的情况。

每一栏的第一行为这一栏的名稱其中,Who需左对齐其他栏需右对齐。

题目栏的名称为题目的标号

接下来若干行,按顺序输出每个队伍的信息每栏的信息需右对齐。

队伍按照通过题目数量排名如果两队通过题目数量相等,总用时少的队伍排名靠前

如果出现题数和罚时均相等的队伍,则按照队名嘚字典序排序同时Rank一栏的值需相等。第一个与他们排名不相等的队伍的排名选择绝对排名例如前五个队伍的排名分别为1、2、3、3、3,则苐六个队伍的绝对排名为6

我要回帖

 

随机推荐