CSDN编程竞赛报名地址:https://edu.csdn.net/contest/detail/16
(请不要删掉此地址)
努力是为了让自己不平庸,这次CSDN竞赛一波三折,最终还是完成了比赛。答题初始,就耽误了50分钟,提交代码测试页面没有反应,以及出现了按下insert键相同情况,最终刷新解决。在比赛结束那一刻,最后一题代码通过所有用例。完美收官
前言
本次大赛堪称完美,大家都表现出了很高的技术水平,一众百分获得者,场面甚是宏伟。感谢CSDN官方给了我们展示技术的舞台,希望CSDN竞赛越来越好。
参赛流程
1.手机及网页端均可报名,建议在网页端报名
2.比赛过程中,复制粘贴有次数限制,注意次数。
3.比赛过程中,不要切除画面,所以比赛前要把QQ微信等退出,以免弹框影响比赛。
4.比赛过程中,如果提交没反应等,或有其他不正常的情况,可以尝试刷新页面。
题目复盘
CSDN竞赛第6期第3题
已知字符串str,str表示邮箱的不标准格式。 其中”.”会被记录成”dot”,”@”记录成”at”。 写一个程序将str转化成可用的邮箱格式。(可用格式中字符串中除了开头结尾所有”dot”,都会被转换,”at”只会被转化一次,开头结尾的不转化)
测试案例1:输入 "xyatsinadotcomdotcn"
输出 "xy@sina.com.cn"
测试案例2:输入 "atxyatsinadotcomdotcn"
输出 "atxy@sina.com.cn"
解题思路
思路1
<script> let getEmail = function (str) { var result; // TODO: 请在此编写代码 while (str.includes('dot')) { str = str.replace('dot', '.') } // 直接使用这个替换,只会替换第一次遇见的,如果头有at,就会被误换 // str = str.replace('at', '@') // 将所有的at都替换 while (str.includes('at')) { str = str.replace('at', '@') } // 检测如果头或尾是@,则改为at if (str[0] === "@") { str = str.replace('@', "at") } if (str[str.length - 1] === "@") { str = str.replace('@', "at") } result = str return result; } let res1 = getEmail('xyatsinadotcomdotcn') console.log(res1)//[email protected] let res2 = getEmail('atxyatsinadotcomdotcn') console.log(res2)//[email protected] </script>
思路2
<script> let getEmail = function (str) { var result; // TODO: 请在此编写代码 while (str.includes('dot')) { str = str.replace('dot', '.') } // 直接使用这个替换,只会替换第一次遇见的,如果头有at,就会被误换 // str = str.replace('at', '@') let cen = str.slice(1, str.length - 1).replace('at', '@') // 拼接 result = str[0].concat(cen, str[str.length - 1]) return result; } let res1 = getEmail('xyatsinadotcomdotcn') console.log(res1)//[email protected] let res2 = getEmail('atxyatsinadotcomdotcn') console.log(res2)//[email protected] </script>
经验心得
本次比赛,充分利用了之前所学的知识,所以平时的学习积累非常重要,只有熟练了,你在竞赛时,才能运用自如。
版权归原作者 divpeople 所有, 如有侵权,请联系我们删除。