网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
12月29日
漏签
0
天
c++吧
关注:
590,998
贴子:
2,105,388
看贴
图片
吧主推荐
游戏
1
2
3
下一页
尾页
110
回复贴,共
3
页
,跳到
页
确定
<<返回c++吧
>0< 加载中...
求教各位,这题怎么搞?
只看楼主
收藏
回复
旺仔牛奶36
&
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
大佬来个快一点的算法。
旺仔牛奶36
&
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
dd
旺仔牛奶36
&
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
dd
讠朱仙
&
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
看不懂
旺仔牛奶36
&
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
楼上这位朋友问的好啊,中文版的做习惯了,一看英文版就是。。。
讠朱仙
&
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
渣英翻译题目,给出两字符串s和p 其中p非空,两个字符串都不超过40000的长度,输出在s中所有的与p构成字母一样(数量一样)的任意连续序列的头序列位置。
是不是这样
旺仔牛奶36
&
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
dd
诛亻仙
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
我好像是错的
旺仔牛奶36
&
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
旺仔牛奶36
&
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
我也贴一下吧,我的超时了,看有没有大神帮忙改改,java写的。
旺仔牛奶36
&
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
心之刃
->*
15
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
用几个a、几个b……的形式表示字符串。
诛亻仙
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
#include <iostream>
#include <string>
#include <vector>
#include <unordered_map>
#include<sstream>
using namespace std;
int main()
{
unordered_map<char, vector<char*>> strs;
unordered_map<char,unsigned int> strp;
for (int i = 97; i <= 122; ++i)
{
strs[char(i)].reserve(2000);
strp[char(i)] = 0;
}
string s, p;
cin >> s >> p;
char *sbegin = &s[0];
char *sback = &s[s.size()-1];
unsigned int sum = p.size();
for (char &c : s)
{
strs[c].push_back(&c);
}
for (char &c : p)
{
strp[c] += 1;
}
vector<char*> result;
for (auto &m : strp)
{
if (m.second != 0)
{
for (auto ptrp : strs[m.first])
{
char *end;
if ((end =( ptrp + sum-1)) <= sback)
{
bool flag=true;
auto strpp(strp);
for (char * ptr = ptrp; ptr <= end;ptr++)
{
if (strpp[*ptr] == 0)
{
flag = false;
break;
}
else
{
strpp[*ptr] -= 1;
}
}
if (flag)
result.push_back(ptrp);
}
}
}
}
if (!result.empty())
{
stringstream str;
str << "[";
for (char * (&pp) : result)
str << pp - sbegin << ",";
string strr = str.str();
strr[strr.size() - 1] = ']';
cout << strr << endl;
}
return 0;
}
讠朱仙
&
9
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
我上面的算法用的基本是指针和容器,应该算比较快了,中间加了很多判断防止没有必要的计算。
Baka9
<<
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
无序容器可以并行吗
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示