第五屆藍橋杯JavaB組第四題

2021-07-29 23:47:17 字數 795 閱讀 1895

題目

今有7對數字:兩個1,兩個2,兩個3,...兩個7,把它們排成一行。

要求,兩個1間有1個其它數字,兩個2間有2個其它數字,以此類推,兩個7之間有7個其它數字。如下就是乙個符合要求的排列:

17126425374635

當然,如果把它倒過來,也是符合要求的。

請你找出另一種符合要求的排列法,並且這個排列法是以74開頭的。

注意:只填寫這個14位的整數,不能填寫任何多餘的內容,比如說明注釋等。

答案: 74151643752362

總共14個數字,其實根據要求只需要確定7個數字就行了,剩餘的7個數字的位置也會隨之確定

用乙個棧儲存已經確定的位置,不斷試探,當棧的大小為14時,則滿足條件,否則回溯,繼續試探

**如下:

static int v = new int[7];

static int s = new int[14];

static arraylista = new arraylist();

public static void main(string args)

public static void s(int code)

return;

} for (int i = 0; i < 7; i++)

s(code+j);

a.remove((integer)code);//回溯時把本輪入棧的出棧

a.remove((integer)(code+i+2));

v[i] = 0;

}} }

第五屆藍橋杯JavaA組第四題

今有7對數字 兩個1,兩個2,兩個3,兩個7,把它們排成一行。要求,兩個1間有1個其它數字,兩個2間有2個其它數字,以此類推,兩個7之間有7個其它數字。如下就是乙個符合要求的排列 當然,如果把它倒過來,也是符合要求的。請你找出另一種符合要求的排列法,並且這個排列法是以74開頭的。注意 只填寫這個14...

第五屆藍橋杯 JavaB 調和級數

1 1 1 2 1 3 1 4 在數學上稱為調和級數。它是發散的,也就是說,只要加上足夠多的項,就可以得到任意大的數字。但是,它發散的很慢 前1項和達到 1.0 前4項和才超過 2.0 前83項的和才超過 5.0 那麼,請你計算一下,要加多少項,才能使得和達到或超過 15.0 呢?請填寫這個整數。注...

第五屆藍橋杯C C 程式設計B組省賽第四題

problem description 史豐收速演算法的革命性貢獻是 從高位算起,進製。不需要九九表,徹底顛覆了傳統手算 速算的核心基礎是 1位數乘以多位數的乘法。其中,乘以7是最複雜的,就以它為例。因為,1 7 是個迴圈小數 0.142857 如果多位數超過 142857 就要進1 同理,2 7,...