免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: send_linux
打印 上一主题 下一主题

[学习共享] 2013年ChinaUnix社区Shell编程大赛!(获奖名单公布)!  关闭 [复制链接]

论坛徽章:
3
金牛座
日期:2013-08-26 10:25:02摩羯座
日期:2013-09-09 15:14:322015年亚洲杯之约旦
日期:2015-05-06 09:33:56
121 [报告]
发表于 2013-07-05 17:08 |只看该作者
做不出来啊

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
122 [报告]
发表于 2013-07-05 19:38 |只看该作者
itfly3 发表于 2013-07-01 17:43
环境:
SLES11SP2_32:~ # uname -r
3.0.13-0.27-pae

欢迎,第一个贴就是参加大奖赛的,而且全回答了。

论坛徽章:
0
123 [报告]
发表于 2013-07-05 23:54 |只看该作者
第7题:
  1. #!/bin/bash

  2. a=(1 2 3 4 5 6 7 8 9)

  3. sum() {
  4.     row_add_string=$( echo "${a[0]}${a[1]}${a[2]} + ${a[3]}${a[4]}${a[5]} + ${a[6]}${a[7]}${a[8]}" )
  5.     col_add_string=$( echo "${a[0]}${a[3]}${a[6]} + ${a[1]}${a[4]}${a[7]} + ${a[2]}${a[5]}${a[8]}" )
  6.     echo $(( $row_add_string + $col_add_string ))
  7. }

  8. print_result() {
  9.     echo "${a[0]} ${a[1]} ${a[2]}"
  10.     echo "${a[3]} ${a[4]} ${a[5]}"
  11.     echo "${a[6]} ${a[7]} ${a[8]}"
  12. }

  13. swap() {
  14.     t=${a[$1]} ; a[$1]=${a[$2]} ; a[$2]=$t
  15. }

  16. generate() {
  17.     local n=$1
  18.     if [ "$n" -eq 1 ] ; then
  19.         if [ $(sum) -eq 4446 ] ; then
  20.             print_result
  21.             exit 0
  22.         fi
  23.         return
  24.     fi
  25.     local i
  26.     for (( i=0; $i<=$n-1; i=$i+1 )) ; do
  27.     #剪枝
  28.         if [[ ( "$n" = "3" || "$n" -ge 6) && ( $((${a[$i]} % 2)) -eq 0 ) ]]
  29.         then
  30.             continue
  31.         fi
  32.         swap $i $(($n-1))
  33.         generate $(($n-1))
  34.         swap $i $(($n-1))
  35.     done
  36. }

  37. generate 9
复制代码
输出结果为:
8 4 7
6 2 5
9 3 1

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
124 [报告]
发表于 2013-07-08 11:05 |只看该作者
回复 123# luyanfei78

答案不止一个。
   

论坛徽章:
0
125 [报告]
发表于 2013-07-08 11:19 |只看该作者
5.
  1. #!/bin/sh
  2. num=$1
  3. var=$(echo $num|bc 2>/dev/null)
  4. if [ "$num" == "$var" ];then
  5. long=${#num}
  6. sum=0
  7. for((i=1;i<=$long;i++));
  8. do
  9. a=`expr $num % 10`
  10. num=`expr $num / 10`
  11. sum=`expr $a + $sum`
  12. done
  13. echo $sum
  14. else
  15. echo not a number!
  16. fi
复制代码

论坛徽章:
0
126 [报告]
发表于 2013-07-08 20:18 |只看该作者
擦,看到了完了,马上要结束了啊。

论坛徽章:
49
15-16赛季CBA联赛之福建
日期:2016-06-22 16:22:002015年亚洲杯之中国
日期:2015-01-23 16:25:12丑牛
日期:2015-01-20 09:39:23未羊
日期:2015-01-14 23:55:57巳蛇
日期:2015-01-06 18:21:36双鱼座
日期:2015-01-02 22:04:33午马
日期:2014-11-25 09:58:35辰龙
日期:2014-11-18 10:40:07寅虎
日期:2014-11-13 22:47:15申猴
日期:2014-10-22 15:29:50摩羯座
日期:2014-08-27 10:49:43辰龙
日期:2014-08-21 10:47:58
127 [报告]
发表于 2013-07-25 15:33 |只看该作者
回复 1# send_linux

获奖名单公布!


   

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
128 [报告]
发表于 2013-07-25 17:27 |只看该作者
本帖最后由 rdcwayx 于 2013-07-25 19:41 编辑

在哪里?

看到了 http://bbs.chinaunix.net/thread-4092314-1-1.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP