楼主: 〇〇

Puzzleup 2013挑战赛即将开始

[复制链接]
论坛徽章:
520
奥运会纪念徽章:垒球
日期:2008-09-15 01:28:12生肖徽章2007版:鸡
日期:2008-11-17 23:40:58生肖徽章2007版:马
日期:2008-11-18 05:09:48数据库板块每日发贴之星
日期:2008-11-29 01:01:02数据库板块每日发贴之星
日期:2008-12-05 01:01:03生肖徽章2007版:虎
日期:2008-12-10 07:47:462009新春纪念徽章
日期:2009-01-04 14:52:28数据库板块每日发贴之星
日期:2009-02-08 01:01:03生肖徽章2007版:蛇
日期:2009-03-09 22:18:532009日食纪念
日期:2009-07-22 09:30:00
41#
发表于 2013-8-14 23:06 | 只看该作者
#4
Four Digits

You have a number where any digit appears at most twice. The sum of all neighboring four digits in this number is a square number.

What is the maximum possible value for this number?

Example: 205290 is such a number because no digit appears more than twice and 2+0+5+2, 0+5+2+9, and 5+2+9+0 are square numbers.

你有一个数,任意一位数字的出现不超过两次。所有四位相邻数字的和都是一个平方数。这个数最大的可能值是多少?
例如:205290就是这样一个数,所有数字的出现都不超过两次,并且2+0+5+2, 0+5+2+9, 和 5+2+9+0 都是平方数。

使用道具 举报

回复
论坛徽章:
520
奥运会纪念徽章:垒球
日期:2008-09-15 01:28:12生肖徽章2007版:鸡
日期:2008-11-17 23:40:58生肖徽章2007版:马
日期:2008-11-18 05:09:48数据库板块每日发贴之星
日期:2008-11-29 01:01:02数据库板块每日发贴之星
日期:2008-12-05 01:01:03生肖徽章2007版:虎
日期:2008-12-10 07:47:462009新春纪念徽章
日期:2009-01-04 14:52:28数据库板块每日发贴之星
日期:2009-02-08 01:01:03生肖徽章2007版:蛇
日期:2009-03-09 22:18:532009日食纪念
日期:2009-07-22 09:30:00
42#
发表于 2013-8-14 23:06 | 只看该作者
SQL找到81978100367936,大家继续

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
43#
 楼主| 发表于 2013-8-15 09:11 | 只看该作者
四位相邻数字的和都是一个平方数
最多36
最小9
(1和4不符合题意)

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
44#
 楼主| 发表于 2013-8-15 09:17 | 只看该作者
本帖最后由 〇〇 于 2013-8-15 09:42 编辑

每个平方数至少差7,要么差9,(36也不可能,所以最多差11不存在),因此若存在差11的第1个和第5个必须是一个数
如81978的1和5位都是8
把所有4位数列出来,不符合的去掉,剩下的去凑,最多不超过20位
SQL> with t as(
  2  select level-1 l from dual connect by level<=10
  3  )
  4  select count(distinct a.l||b.l||c.l||t.l) from t,t a,t b,t c where a.l+b.l+c.l+t.l
  5  in(9,16,25)
  6  and a.l<>0;
COUNT(DISTINCTA.L||B.L||C.L||T.L)
---------------------------------
                             1071

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
45#
 楼主| 发表于 2013-8-15 20:31 | 只看该作者
〇〇 发表于 2013-8-15 09:17
每个平方数至少差7,要么差9,(36也不可能,所以最多差11不存在),因此若存在差11的第1个和第5个必须是一 ...

奇怪,怎么找不到匹配的
SQL> with t as(
  2  select level-1 l from dual connect by level<=10
  3  ),
  4  t2 as(
  5  select a.l||b.l||c.l||t.l c4
  6  from t,t a,t b,t c where a.l+b.l+c.l+t.l in(9,16,25)
  7  and a.l<>0
  8  and find2(a.l||b.l||c.l||t.l)=1)
  9  select count(a.c4||substr(t2.c4,1,1))
10  from t2,t2 a
11  where
12  substr(a.c4,2,3)=197 and
13  substr(t2.c4,1,3)=197;

COUNT(A.C4||SUBSTR(T2.C4,1,1))
------------------------------
                             0

已用时间:  00: 00: 02.08
SQL> with t as(
  2  select level-1 l from dual connect by level<=10
  3  ),
  4  t2 as(
  5  select a.l||b.l||c.l||t.l c4
  6  from t,t a,t b,t c where a.l+b.l+c.l+t.l in(9,16,25)
  7  and a.l<>0
  8  and find2(a.l||b.l||c.l||t.l)=1)
  9  select * from t2 where substr(t2.c4,1,3)=197;

C4
----------------------------------------------------------------
1978

已用时间:  00: 00: 00.03
SQL> 9
  9* select * from t2 where substr(t2.c4,1,3)=197
SQL> c/1/2
  9* select * from t2 where substr(t2.c4,2,3)=197
SQL> /

C4
----------------------------------------------------------------
8197
create or replace function find2(a varchar2)
return number
as
type tc is table of number index by varchar2(1);
c tc;
begin
for i in 0..9 loop
c(chr(ascii(0)+i)):=0;
end loop;
for i in 1..length(a) loop
c(substr(a,i,1)):=c(substr(a,i,1))+1;
if c(substr(a,i,1))>2 then
return 0;
end if;
end loop;
return 1;
end;
/

使用道具 举报

回复
论坛徽章:
520
奥运会纪念徽章:垒球
日期:2008-09-15 01:28:12生肖徽章2007版:鸡
日期:2008-11-17 23:40:58生肖徽章2007版:马
日期:2008-11-18 05:09:48数据库板块每日发贴之星
日期:2008-11-29 01:01:02数据库板块每日发贴之星
日期:2008-12-05 01:01:03生肖徽章2007版:虎
日期:2008-12-10 07:47:462009新春纪念徽章
日期:2009-01-04 14:52:28数据库板块每日发贴之星
日期:2009-02-08 01:01:03生肖徽章2007版:蛇
日期:2009-03-09 22:18:532009日食纪念
日期:2009-07-22 09:30:00
46#
发表于 2013-8-15 21:27 | 只看该作者
我昨天捡到一枚图书章,谁先用SQL写出来就送给谁(楼主除外),这玩意可以换一本书哦。

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
47#
 楼主| 发表于 2013-8-15 21:49 | 只看该作者
newkid 发表于 2013-8-15 21:27
我昨天捡到一枚图书章,谁先用SQL写出来就送给谁(楼主除外),这玩意可以换一本书哦。

nice job

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
48#
 楼主| 发表于 2013-8-16 06:44 | 只看该作者
newkid 发表于 2013-8-15 21:27
我昨天捡到一枚图书章,谁先用SQL写出来就送给谁(楼主除外),这玩意可以换一本书哦。

书的品种有点少
http://www.itpub.net/thread-1804976-1-1.html

使用道具 举报

回复
论坛徽章:
8
玉兔
日期:2015-11-16 10:18:00铁扇公主
日期:2015-10-27 21:47:42九尾狐狸
日期:2015-12-11 22:31:15
49#
发表于 2013-8-16 06:55 | 只看该作者
有两个吧
x
-------------------
81978100367936
63976300187918

(2 row(s) affected)

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
50#
 楼主| 发表于 2013-8-16 08:46 | 只看该作者
lugionline 发表于 2013-8-16 06:55
有两个吧
x
-------------------

就是逆序,取大
What is the maximum possible value for this number?

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表