Redian新闻
>
Calendar软件自动导入联系人生日和重要纪念日
avatar
Calendar软件自动导入联系人生日和重要纪念日# PDA - 掌中宝
c*3
1
输入一个词典termDict.txt,每行一个单词,同时输入一个不含空格的字符串,例如:
ilovethisgame,输出包含空格的英文句子,例如I love this game。
要求:
1, 编码实现该函数,如果有多种可能输出,输出所有可能
2, 建议先考虑整体流程,再进行优化,若时间有限,可使用部分伪代码
3, 分析并讨论:如果有多种可能输出,如何选择最有可能的输出
avatar
o*e
2
去walmart MC喂了nw buxx, $500和bb买的$200 vgc,毫无压力,不敢充太猛,从
checkout lane找小二充了$200
dollar general 小气的要命,一直不让用amex DG offer买GC,果然,试图,cash only
。。。尼玛
avatar
a*a
3
lid:eye:: Shade: ??
lid相对于eye
那shade相对于那个词呢?
我google半天也查不出来
avatar
E*o
4
三星系统唯一看得上的就是自带的Calendar会自动从Google Contacts里导入联系人的
生日信息并加入日历提醒。
为什么原生的没有这个功能?
avatar
p*2
5
(defn word-break [str]
((fn dfs [str, p, res]
(if (= p (count str))
(println res)
(loop [end (inc p)]
(when (<= end (count str))
(let [word (subs str p end)]
(when (contains? dict word)
(dfs str end (conj res word)))
(recur (inc end)))))))
str 0 []))
avatar
d*c
6
thx
avatar
w*o
7
window?

【在 a*****a 的大作中提到】
: lid:eye:: Shade: ??
: lid相对于eye
: 那shade相对于那个词呢?
: 我google半天也查不出来

avatar
c*3
8
def y(l, r):
if(l>r):
return 1
if(a[l]>-1):
return a[l]
i=l
while i<=r:
if(s[l:i+1] in dict):
a[i]=y(i+1, r)
if(a[i]==1):
return 1
i+=1
return 0
f=open('termDict.txt')
dict=set()
for line in f:
dict.add(line.strip())
s='ilovethisgame'
a=len(s)*[-1]
y(0, len(s)-1)
k=0
c=[]
for i in range(len(a)):
if(a[i]==1):
c.append(s[k:i+1])
k=i+1
print c
avatar
j*6
9
Dollar general还是family dollar?

only

【在 o******e 的大作中提到】
: 去walmart MC喂了nw buxx, $500和bb买的$200 vgc,毫无压力,不敢充太猛,从
: checkout lane找小二充了$200
: dollar general 小气的要命,一直不让用amex DG offer买GC,果然,试图,cash only
: 。。。尼玛

avatar
a*a
10
说不定还真是呢。。。

【在 w*****o 的大作中提到】
: window?
avatar
f*n
11
如果是考虑多种组合,显然是DP算法。
构建dp[s.length][s.length]
根据dict设置dp[i][j] = 1 其中s[i...j]可以在dict中找到
dp每行会有多个1
根据ilovethisgame的静态算法如下
显示的a[i] 为每个word的第一个字母位置
void printpath (int a[13])
{
for (int i = 0; i < 13; i++)
printf("%d ", a[i]);
printf("n");
}
bool findAllPath(int dp[13][13], int a[13], int s, int e)
{
if (dp[s][e] == 1)
{
a[s]=1;
printpath(a);
return true;
}
int i = s;
bool found = false;
while (i <= e)
{
if (dp[s][i] == 1)
{
a[s]=1;
if (findAllPath(dp, a, i+1, e) == true)
found = true;
}
i++;
}
return found;
}
int _tmain(int argc, _TCHAR* argv[])
{
int dp[13][13];
for (int i = 0; i < 13; i++)
for (int j = 0; j < 13; j++)
dp[i][j]=0;
int a[13];
for (int i = 0; i < 13; i++)
a[i]=0;
dp[0][0] = 1;
dp[1][4] = 1;
dp[5][8] = 1;
dp[9][12] = 1;
findAllPath(dp, a, 0, 12);
return 0;
}
avatar
J*A
12
Sun?
eyelid
是不是和shade 连起来得是一个词?

lid:eye:: Shade: ??lid相对于eye那shade相对于那个词呢?我google半天也查不出


【在 a*****a 的大作中提到】
: lid:eye:: Shade: ??
: lid相对于eye
: 那shade相对于那个词呢?
: 我google半天也查不出来

avatar
z*h
13
你这个根本不是Dynamic Programming。你的dp table里的东西就没有被update. 你这
个还是brute force的 recursive solution.
其实这是个BFS or DFS可以解决的问题。

【在 f******n 的大作中提到】
: 如果是考虑多种组合,显然是DP算法。
: 构建dp[s.length][s.length]
: 根据dict设置dp[i][j] = 1 其中s[i...j]可以在dict中找到
: dp每行会有多个1
: 根据ilovethisgame的静态算法如下
: 显示的a[i] 为每个word的第一个字母位置
: void printpath (int a[13])
: {
: for (int i = 0; i < 13; i++)
: printf("%d ", a[i]);

avatar
J*A
14
Window shade 好像更恰当。 但 一般 window 和 shade 是不是分开用......

window?

【在 w*****o 的大作中提到】
: window?
avatar
o*n
15
leetcode word break II
avatar
d*e
16
绝对是 window,简直没法儿更对了。
avatar
w*s
17
错,要记录下已知的break
awarehouseisawarehouse
awarehouse = aware house, a ware house, a warehouse
isawarehouse = is a warehouse, is a ware house
isawarehouse已知的break不需要在下次继续求。

【在 z*******h 的大作中提到】
: 你这个根本不是Dynamic Programming。你的dp table里的东西就没有被update. 你这
: 个还是brute force的 recursive solution.
: 其实这是个BFS or DFS可以解决的问题。

avatar
a*a
18
多谢,今年回家就讲给女儿听。

【在 d*******e 的大作中提到】
: 绝对是 window,简直没法儿更对了。
avatar
z*h
19
他的code中哪里记录下已知的break了?

【在 w********s 的大作中提到】
: 错,要记录下已知的break
: awarehouseisawarehouse
: awarehouse = aware house, a ware house, a warehouse
: isawarehouse = is a warehouse, is a ware house
: isawarehouse已知的break不需要在下次继续求。

avatar
l*a
20
mark
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。