直接暴力 答案 52488
#include
using namespace std;
intmain()
t/=10
;}if(ok)ans++;}
cout<
}
excel填一下 2017-8-5
這題有意思了 可以用數學直接推出來
首先三必定是1,祥+1=10+羊(+1) 進製情況+1
有進製的情況 祥=10+羊 不成立 此處沒有進製
因為沒有進製 祥只能等於9,羊就等於0了
現在我們有瑞+羊=生,因為沒有進製 瑞=生 不成立,所以我們有
1.生+獻(+1)=10+瑞
2.瑞+1=生
對於1. 如果沒有進製 綜合1.2可以得出獻等於9,不成立,所以必有進製
1.生+獻+1=10+瑞
2.瑞+1=生
綜合1.2.,可以推出獻等於8
現在我們有
0 1 8 9
羊 三 獻 祥
但是這不足以求出生和瑞。
我們繼續往後看,由上一步有進製得出 輝+瑞=10+氣
那麼我們列舉一下生和瑞的可能
生 3 4 5 6 7
瑞 2 3 4 5 6
顯然輝不等於8和9且氣不等於0和1(三和羊)那麼瑞=2,=3,=4的情況排除掉
生 6 7
瑞 5 6
瑞等於6 則生等於7 那麼輝只能等於5或者4,此時又不成立
那麼最後答案就出來了
9567
+1085
10652
第二種方法 直接搜
#include
using namespace std;
int flag[11]
=;//1 2 3 4 5 6 7 8
//三羊獻瑞祥生輝氣
int num[8]
=;bool check
(int n)
return false;
}void
dfs(
int cur)
return;}
// if(num[cur]==0)
for(
int i=
0;i<
10;i++)}
return;}
intmain()
這道題有公式
1+2+3+…+48+49=1225
1+2+3+…(x-1)x+(y-1)y+…49=1225;
上式相減做差,得到
xx+yy-x-y-2=790;
我們直接列舉就得到xy了
當然你也可以先選乙個x,算(x-1)*x,然後根據這個x做(y-1)y=2015-1225+x+x-1+y+y-1( x已經確定了)來確定y 最後判斷一下就行了
}}每種牌0~4張,列舉一下所有可能的結果即可
#include
int ans =
0, sum =0;
void
dfs(
int cur,
int sum)
for(
int i=
0;i<
5;i++
)dfs
(cur+
1,sum+i);}
intmain()
這道題不難 只是要仔細想
兩個數之間的距離為 它們所在行相減+它們所在列相減
所在行我們直接用相除就行了
所在列呢?
觀察樣例 偶數列從左往右填數,奇數列從右往左填數,那麼我們根據這個規律找一下x,y所在的列即可
**
#include
using namespace std;
int w,m,n;
void
fun(
int row,
int num,
int&cnt)
}else}}
intmain()
不會qa 第六屆藍橋杯省賽C C B組(倒序)
在x森林裡,上帝建立了生命之樹。他給每棵樹的每個節點 葉子也稱為乙個節點 上,都標了乙個整數,代表這個點的和諧值。上帝要在這棵樹內選出乙個非空節點集 s,使得對於 s 中的任意兩個點 a,b,都存在乙個點列 使得這個點列中的每個點都是 s 裡面的元素,且序列中相鄰兩個點間有一條邊相連。在這個前提下,...
第六屆藍橋杯個人省賽C語言A組第六題
小明被劫持到x賭城,被迫與其他3人玩牌。一副撲克牌 去掉大小王牌,共52張 均勻發給4個人,每個人13張。這時,小明腦子裡突然冒出乙個問題 如果不考慮花色,只考慮點數,也不考慮自己得到的牌的先後順序,自己手裡能拿到的初始牌型組合一共有多少種呢?請填寫該整數,不要填寫任何多餘的內容或說明文字。答案 3...
第六屆藍橋杯試題c c B組4
格仔中輸出 stringingrid函式會在乙個指定大小的格仔中列印指定的字串。要求字串在水平 垂直兩個方向上都居中。如果字串太長,就截斷。如果不能恰好居中,可以稍稍偏左或者偏上一點。下面的程式實現這個邏輯,請填寫劃線部分缺少的 include include void stringingrid i...