文章图片
文章图片
文章图片
文章图片
会刷编程竞赛题的AlphaCode来了!
其实 , AlphaCode早在几个月前就“悄悄进村”了 , 一直没人察觉 。
它默默参加了著名网站Codeforces最近举行的10场编程比赛 , 成绩超过了一半人类 。
直到今天DeepMind才公布最终成绩:AlphaCode在这10场比赛中排名前54.3% , Elo评分1238 。
更重要的是 , 在编程比赛这样考察算法创造力的问题中 , AI终于不落下风 , 而这恰恰是AI过去所欠缺的 。
如果把这个分数放到过去六个月总体来看 , AlphaCode的成绩更为优秀 , 因为它只刷了10周的题目 , 就已经达到了前28%用户的水平 。
Codeforces是一个由俄罗斯程序员Mikhail Mirzayanov创办的编程竞赛网站 , 大约每周举行一次名为“Codeforces Rounds”的编程比赛 。
通过Codeforces的Elo评分可以衡量一位程序员的编程水平 。
△ Codeforces创始人Mikhail Mirzayanov
当看到AlphaCode的成绩后 , 连创始人Mirzayanov都惊讶不已 。
他原本对AI持怀疑态度 , 因为编程比赛考验的是发明算法的能力 , 这是最困难的 , 没想到AlphaCode的结果完全超出了他的预期 。
DeepMind发布这条消息仅半天 , 在Twitter上已经有2000多次转发、5000多点赞 。
AlphaCode如何编程说了这么多 , 下面我们来看看AlphaCode是如何成为“编程做题家”的 。
以下是Codeforces上的1553D问题:
【Google|AlphaCode惊世登场!编程版“阿法狗”悄悄参赛,击败一半程序员】(链接:https://codeforces.com/problemset/problem/1553/D)
例如字符串s是”abcbd” , 你分别在第一个位置和第四个位置按下Backspace , 那么将得到字符串”bd” 。
有两个字符串s和t , 都是由小写字母组成 。 对于字符串s , 我们从前向后扫描整个字符串 。
如果按下Backspace键 , 就删除该光标前到上一个未删除字符之间的所有字符 。
因为在第一个光标位置前没有字符 , 所以第一次没有动作 。 第四个光标位置前的字符是c , 上一个未删除字符是a , 所以按下Backspace将删除前三个字符”bd” 。
好了 , 现在问题来了:
AlphaCode给出的代码是这样的:
我们能否从前向后扫描一次s字符串 让s变为t 。 如果可以输出YES , 否则输出NO 。
t=int(input()) for i in range(t):s=input()t=input()a=[
b=[
for j in s:a.append(j)for j in t:b.append(j)a.reverse()b.reverse()c=[
while len(b)!=0 and len(a)!=0:if a[0
==b[0
:c.append(b.pop(0))a.pop(0)elif a[0
!=b[0
and len(a)!=1:a.pop(0)a.pop(0)elif a[0
!=b[0
and len(a)==1:a.pop(0)if len(b)==0:print(\"YES\")else:print(\"NO\")
向以上程序输入4组字符串:
4 ababa ba ababa bb aaa aaaa aababa ababa
得到的输出是:
- 编程|AlphaCode惊世登场!编程版“阿法狗”悄悄参赛,击败一半程序员
- AI卷趴程序员!DeepMind代码生成系统AlphaCode,超越近半码农
- AlphaCode惊世登场!编程版“阿法狗”参赛,击败一半程序员
- Google|12+512G大运存,独显芯片+骁龙870处理器,iQOONeo5的确很强
- Google|联想新动作展开,事关造芯,杨元庆早已明确态度
- AlphaCode惊世登场!编程版“阿法狗”悄悄参赛,击败一半程序员
- Google|刘强东个人捐款高达150亿元,用于教育环保公益事业,互联网第一人
- Google|Google 代码泄密! 游戏笔电未来有 Windows 以外的“新选择”?
- Google|建立一个搜索引擎有多难?为什么全球只有五个国家有?长知识了
- 芯片|Google代码泄密!游戏笔记本未来有 Windows 以外的新选择?