|
pykacha
初级用户
积分 156
发帖 73
注册 2008-5-9
状态 离线
|
『楼 主』:
用穷举法解一道奥数题?
题目是这样的:有一个四位数,第一位数是这个数中数字0的个数,第二位数是这个数中数字1的个数,第三位数是这个数中数字2的个数,第四位数是这个数中数字3的个数,求这个数。
|
为自己是中国人而倍感骄傲 |
|
2008-11-17 17:35 |
|
|
pusofalse
银牌会员
积分 1604
发帖 646
注册 2008-4-13
状态 离线
|
『第
2 楼』:
- - ||| 居然没看懂什么意思。。。
|
心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^ |
|
2008-11-17 19:28 |
|
|
balinger
中级用户
积分 356
发帖 115
注册 2004-7-27
状态 离线
|
|
2008-11-17 19:47 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
4 楼』:
奥数题就不该用穷举法吧,否则会被奥数老师狠批的:)
|
|
|
2008-11-17 20:14 |
|
|
balinger
中级用户
积分 356
发帖 115
注册 2004-7-27
状态 离线
|
『第
5 楼』:
“第一位数是这个数中数字0的个数”,所以第一位数肯定不为0,否则矛盾。
|
|
2008-11-17 20:30 |
|
|
lianjiang2004
金牌会员
积分 3946
发帖 1884
注册 2006-1-20
状态 离线
|
|
2008-11-17 21:06 |
|
|
pykacha
初级用户
积分 156
发帖 73
注册 2008-5-9
状态 离线
|
『第
7 楼』:
3楼正解,但好像不是用P算出来的。
第一个数字不能为0,否则就是三位数了。
还有,如果题目中的第一位是指从左边算起的话。如果是从右边数起第一位的话,又不知道是什么答案,还是希望可以用P
|
为自己是中国人而倍感骄傲 |
|
2008-11-18 00:14 |
|
|
lianjiang2004
金牌会员
积分 3946
发帖 1884
注册 2006-1-20
状态 离线
|
|
2008-11-18 08:49 |
|
|
balinger
中级用户
积分 356
发帖 115
注册 2004-7-27
状态 离线
|
『第
9 楼』:
第一位是指从左边算起,答案:1210 2020
如果是从右边数起第一位,0202 0121。如果第一个数字不能为0,否则就是三位数,就无解。
以下是第一位从左边算起
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
for /l %%a in (0,1,3) do (
for /l %%b in (0,1,3) do (
for /l %%c in (0,1,3) do (
for /l %%d in (0,1,3) do (
set n=0
for /l %%e in (0,1,3) do (
set m%%e=0
if %%a==%%e set /a m%%e+=1
if %%b==%%e set /a m%%e+=1
if %%c==%%e set /a m%%e+=1
if %%d==%%e set /a m%%e+=1
)
if !m0!==%%a set /a n+=1
if !m1!==%%b set /a n+=1
if !m2!==%%c set /a n+=1
if !m3!==%%d set /a n+=1
if !n!==4 echo %%a%%b%%c%%d
))))
ENDLOCAL
pause
|
|
2008-11-18 15:19 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
10 楼』:
Re 10楼
最外层的 for 应该从0开始吧?
|
|
|
2008-11-18 15:56 |
|