日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

金蝉素数c语言,算法笔记_204:第四届蓝桥杯软件类决赛真题(Java语言C组)

發布時間:2023/12/20 java 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 金蝉素数c语言,算法笔记_204:第四届蓝桥杯软件类决赛真题(Java语言C组) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言:以下代碼僅供參考,若有錯誤歡迎指正哦~

1好好學習

湯姆跟爺爺來中國旅游。一天,他幫助中國的小朋友貼標語。他負責貼的標語是分別寫在四塊紅紙上的四個大字:“好、好、學、習”。但是湯姆不認識漢字,他就想胡亂地貼成一行。

請你替小湯姆算一下,他這樣亂貼,恰好貼對的概率是多少?

答案是一個分數,請表示為兩個整數比值的形式。例如:1/3 或 2/15 等。

如果能夠約分,請輸出約分后的結果。

注意:不要書寫多余的空格。

請嚴格按照格式,通過瀏覽器提交答案。

注意:只提交這個比值,不要寫其它附加內容,比如:說明性的文字。

1 / 12

2埃及分數

古埃及曾經創造出燦爛的人類文明,他們的分數表示卻很令人不解。古埃及喜歡把一個分數分解為類似: 1/a + 1/b 的格式。

這里,a 和 b 必須是不同的兩個整數,分子必須為 1

比如,2/15 一共有 4 種不同的分解法(姑且稱為埃及分解法):

1/8 + 1/120

1/9 + 1/45

1/10 + 1/30

1/12 + 1/20

那么, 2/45 一共有多少個不同的埃及分解呢(滿足加法交換律的算同種分解)? 請直接提交該整數(千萬不要提交詳細的分解式!)。

請嚴格按照要求,通過瀏覽器提交答案。

注意:只提交分解的種類數,不要寫其它附加內容,比如:說明性的文字

7

public class Main {

public static void main(String[] args) {

int count = 0;

for(int a = 1;a < 2000;a++) {

for(int b = 1;b < 2000;b++) {

if(45 * (a + b) == 2 * a * b) {

count++;

System.out.println("a = "+a+", b = "+b);

}

}

}

System.out.println("count = "+count / 2);

}

}

3金蟬素數

考古發現某古墓石碑上刻著一個數字:13597,后研究發現:

這是一個素數!

并且,去掉首尾數字仍是素數!

并且,最中間的數字也是素數!

這樣特征的數字還有哪些呢?通過以下程序的幫助可以輕松解決。請仔細閱讀代碼,并填寫劃線部分缺失的代碼。

public class A

{

static boolean isPrime(int n)

{

if(n<=1) return false;

for(int i=2; i*i<=n; i++){

if(n%i==0) return false;

}

return true;

}

static void f(int[] x, int k)

{

if(_____________________________){ // 填空位置

if(isPrime(x[0]*10000 + x[1]*1000 + x[2]*100 + x[3]*10 + x[4]) &&

isPrime(x[1]*100 + x[2]*10 + x[3]) &&

isPrime(x[2]))

System.out.println(""+x[0]+x[1]+x[2]+x[3]+x[4]);

return;

}

for(int i=k; i

{int tmp=x[k]; x[k]=x[i]; x[i]=tmp; }

f(x,k+1);

{int tmp=x[k]; x[k]=x[i]; x[i]=tmp; }

}

}

static void test()

{

int[] x = {1,3,5,7,9};

f(x,0);

}

public static void main(String[] args)

{

test();

}

}

請分析代碼邏輯,并推測劃線處的代碼,通過網頁提交。

注意:僅把缺少的代碼作為答案,千萬不要填寫多余的代碼、符號或說明文字!!

k== x.length

4橫向打印二叉樹

二叉樹可以用于排序。其原理很簡單:對于一個排序二叉樹添加新節點時,先與根節點比較,若小則交給左子樹繼續處理,否則交給右子樹。

當遇到空子樹時,則把該節點放入那個位置。

比如,10 8 5 7 12 4 的輸入順序,應該建成二叉樹如圖1所示。

本題目要求:根據已知的數字,建立排序二叉樹,并在標準輸出中橫向打印該二叉樹。

輸入數據為一行空格分開的N個整數。 N<100,每個數字不超過10000。

輸入數據中沒有重復的數字。

輸出該排序二叉樹的橫向表示。 對應上例中的數據,應輸出:

|-12

10-|

|-8-|

| |-7

|-5-|

|-4

為了便于評卷程序比對空格的數目,請把空格用句點代替:

...|-12

10-|

...|-8-|

.......|...|-7

.......|-5-|

...........|-4

例如:

用戶輸入:

10 5 20

則程序輸出:

...|-20

10-|

...|-5

再例如:

用戶輸入:

5 10 20 8 4 7

則程序輸出:

.......|-20

..|-10-|

..|....|-8-|

..|........|-7

5-|

..|-4

資源約定:

峰值內存消耗(含虛擬機) < 64M

CPU消耗 < 1000ms

請嚴格按要求輸出,不要畫蛇添足地打印類似:“請您輸入...” 的多余內容。

所有代碼放在同一個源文件中,調試通過后,拷貝提交該源碼。

注意:不要使用package語句。不要使用jdk1.6及以上版本的特性。

注意:主類的名字必須是:Main,否則按無效代碼處理。

import java.util.Scanner;

public class Main {

public static int begin;

static class Tree {

public int value;

public int left;

public int right;

public Tree(int value, int left, int right) {

this.value = value;

this.left = left;

this.right = right;

}

}

public void dfs(int start, Tree[] tree, String s1, String s2, int n) {

if(start == begin)

s1 = s1 + tree[start].value;

else {

s1 = s1 + "-|-";

s1 = s1 + tree[start].value;

}

if(tree[start].right != -1) {

s2 = s2 + "1";

dfs(tree[start].right, tree, s1, s2, n + 1);

s2 = s2.substring(0, s2.length() - 1);

}

int t = 0;

for(int i = 0;i < s1.length();i++) {

if(s1.charAt(i) == '|') {

if(s2.length() <= t + 1 || s2.charAt(t) != s2.charAt(t + 1))

System.out.print("|");

else

System.out.print(".");

t++;

} else if(t < n) {

System.out.print(".");

} else

System.out.print(s1.charAt(i));

}

if(tree[start].left != -1 || tree[start].right != -1)

System.out.print("-|");

System.out.println();

if(tree[start].left != -1) {

s2 = s2 + "0";

dfs(tree[start].left, tree, s1, s2, n + 1);

s2 = s2.substring(0, s2.length() - 1);

}

}

public static void main(String[] args) {

Main test = new Main();

Scanner in = new Scanner(System.in);

String A = in.nextLine();

String[] arrayA = A.split(" ");

Tree[] tree = new Tree[10005];

for(int i = 0;i < arrayA.length;i++) {

int v = Integer.valueOf(arrayA[i]);

tree[v] = new Tree(v, -1, -1);

}

int start = Integer.valueOf(arrayA[0]);

begin = start;

for(int i = 1;i < arrayA.length;i++) {

int v = Integer.valueOf(arrayA[i]);

int temp = start;

while(true) {

if(v > temp) {

if(tree[temp].right == -1) {

tree[temp].right = v;

break;

} else

temp = tree[temp].right;

} else {

if(tree[temp].left == -1) {

tree[temp].left = v;

break;

} else

temp = tree[temp].left;

}

}

}

String s1 = "";

String s2 = "";

test.dfs(start, tree, s1, s2, 0);

}

}

5危險系數

抗日戰爭時期,冀中平原的地道戰曾發揮重要作用。

地道的多個站點間有通道連接,形成了龐大的網絡。但也有隱患,當敵人發現了某個站點后,其它站點間可能因此會失去聯系。

我們來定義一個危險系數DF(x,y):

對于兩個站點x和y (x != y), 如果能找到一個站點z,當z被敵人破壞后,x和y不連通,那么我們稱z為關于x,y的關鍵點。相應的,對于任意一對站點x和y,危險系數DF(x,y)就表示為這兩點之間的關鍵點個數。

本題的任務是:已知網絡結構,求兩站點之間的危險系數。

輸入數據第一行包含2個整數n(2 <= n <= 1000), m(0 <= m <= 2000),分別代表站點數,通道數;

接下來m行,每行兩個整數 u,v (1 <= u, v <= n; u != v)代表一條通道;

最后1行,兩個數u,v,代表詢問兩點之間的危險系數DF(u, v)。

輸出:一個整數,如果詢問的兩點不連通則輸出-1.

例如:

用戶輸入:

7 6

1 3

2 3

3 4

3 5

4 5

5 6

1 6

則程序應該輸出:

2

資源約定:

峰值內存消耗(含虛擬機) < 64M

CPU消耗 < 2000ms

請嚴格按要求輸出,不要畫蛇添足地打印類似:“請您輸入...” 的多余內容。

所有代碼放在同一個源文件中,調試通過后,拷貝提交該源碼。

注意:不要使用package語句。不要使用jdk1.6及以上版本的特性。

注意:主類的名字必須是:Main,否則按無效代碼處理。

import java.util.ArrayList;

import java.util.Scanner;

public class Main {

public static int n, m, start, end;

public static ArrayList[] map;

public static int count, root;

public static int[] DFN;

public static int[] Low;

public static int[] Parent;

public ArrayList point;

public void init() {

count = 0;

root = 1;

DFN = new int[n + 1];

Low = new int[n + 1];

Parent = new int[n + 1];

point = new ArrayList();

for(int i = 1;i <= n;i++) {

DFN[i] = -1;

Low[i] = -1;

Parent[i] = -1;

}

}

public void TarJan(int begin, int parent) {

DFN[begin] = ++count;

Low[begin] = DFN[begin];

Parent[begin] = parent;

int Childern = 0;

for(int i = 0;i < map[begin].size();i++) {

int j = map[begin].get(i);

if(DFN[j] == -1) {

Childern++;

TarJan(j, begin);

Low[begin] = Math.min(Low[begin], Low[j]);

if(begin == root && Childern > 1) {

if(!point.contains(begin))

point.add(begin);

} else if(begin != root && Low[j] >= DFN[begin]) {

if(!point.contains(begin))

point.add(begin);

}

} else if(j != Parent[begin]) {

Low[begin] = Math.min(Low[begin], DFN[j]);

}

}

}

public void dfs(int begin, boolean[] visited) {

visited[begin] = true;

for(int i = 0;i < map[begin].size();i++) {

int j = map[begin].get(i);

if(visited[j] == false)

dfs(j, visited);

}

}

public void getResult() {

boolean[] visited = new boolean[n + 1];

dfs(start, visited);

if(visited[end] == false) {

System.out.println("-1");

return;

}

init();

TarJan(1, 0);

int count = 0;

for(int i = 0;i < point.size();i++) {

int j = point.get(i);

if(j != start && j != end) {

visited = new boolean[n + 1];

visited[j] = true;

dfs(start, visited);

if(visited[end] == false)

count++;

}

}

System.out.println(count);

}

@SuppressWarnings("unchecked")

public static void main(String[] args) {

Main test = new Main();

Scanner in = new Scanner(System.in);

n = in.nextInt();

m = in.nextInt();

map = new ArrayList[n + 1];

for(int i = 1;i <= n;i++)

map[i] = new ArrayList();

for(int i = 1;i <= m;i++) {

int u = in.nextInt();

int v = in.nextInt();

map[u].add(v);

map[v].add(u);

}

start = in.nextInt();

end = in.nextInt();

test.getResult();

}

}

6公式求值

6、標題:公式求值

輸入n, m, k,輸出圖1所示的公式的值。其中C_n^m是組合數,表示在n個人的集合中選出m個人組成一個集合的方案數。組合數的計算公式如圖2所示。

輸入的第一行包含一個整數n;第二行包含一個整數m,第三行包含一個整數k。

計算圖1所示的公式的值,由于答案非常大,請輸出這個值除以999101的余數。

【樣例輸入1】

3

1

3

【樣例輸出1】

162

【樣例輸入2】

20

10

10

【樣例輸出2】

359316

【數據規模與約定】

對于10%的數據,n≤10,k≤3;

對于20%的數據,n≤20,k≤3;

對于30%的數據,n≤1000,k≤5;

對于40%的數據,n≤10^7,k≤10;

對于60%的數據,n≤10^15,k ≤100;

對于70%的數據,n≤10^100,k≤200;

對于80%的數據,n≤10^500,k ≤500;

對于100%的數據,n在十進制下不超過1000位,即1≤n<10^1000,1≤k≤1000,同時0≤m≤n,k≤n。

【提示】

999101是一個質數;

當n位數比較多時,絕大多數情況下答案都是0,但評測的時候會選取一些答案不是0的數據;

資源約定:

峰值內存消耗(含虛擬機) < 128M

CPU消耗 < 2000ms

請嚴格按要求輸出,不要畫蛇添足地打印類似:“請您輸入...” 的多余內容。

所有代碼放在同一個源文件中,調試通過后,拷貝提交該源碼。

注意:不要使用package語句。不要使用jdk1.6及以上版本的特性。

注意:主類的名字必須是:Main,否則按無效代碼處理。

下面是樓主自己使用蠻力法求解,只過藍橋練習系統中3組數據>~

import java.math.BigInteger;

import java.util.Scanner;

public class Main {

public BigInteger getCnm(long n, long m) {

BigInteger A = BigInteger.ONE;

BigInteger B = BigInteger.ONE;

long c = m;

if(n-m > m)

c = n - m;

for(long i = c + 1;i <= n;i++)

A = A.multiply(new BigInteger(""+i));

for(long i = 1;i <= n - c;i++)

B = B.multiply(new BigInteger(""+i));

return A.divide(B);

}

public BigInteger getXk(long a, long b) {

BigInteger temp = new BigInteger(""+a);

BigInteger result = BigInteger.ONE;

while(b != 0) {

if((b&1) == 1)

result = result.multiply(temp);

temp = temp.multiply(temp);

b >>= 1;

}

return result;

}

public void getReuslt(long n, long m, int k) {

BigInteger result = getCnm(n, m);

BigInteger sum = BigInteger.ZERO;

for(long i = 0;i <= n;i++)

sum = sum.add(getCnm(n, i).multiply(getXk(i, k)));

result = result.multiply(sum).mod(new BigInteger("999101"));

System.out.println(result);

}

public static void main(String[] args) {

Main test = new Main();

Scanner in = new Scanner(System.in);

long n = in.nextLong();

long m = in.nextLong();

int k = in.nextInt();

test.getReuslt(n, m, k);

}

}

算法筆記&lowbar;206&colon;第五屆藍橋杯軟件類決賽真題&lpar;Java語言A組&rpar;

目錄 1 海盜分金幣 2 六角幻方 3 格子放雞蛋 4 排列序數 5 冪一矩陣 6 供水設施 ? ?前言:以下代碼僅供參考,若有錯誤歡迎指正哦~ 1 海盜分金幣 有5個海盜,相約進行一次帆船比賽. 比 ...

算法筆記&lowbar;203&colon;第四屆藍橋杯軟件類決賽真題&lpar;C語言B組&rpar;

目錄 1 猜燈謎 2 連續奇數和 3 空白格式化 4 高僧斗法 5 格子刷油漆 6 農場陽光 ? 前言:以下代碼僅供參考,若有錯誤歡迎指正哦~ 1 猜燈謎 標題:猜燈謎 A 村的元宵節燈會上有一迷題: ...

算法筆記&lowbar;205&colon;第五屆藍橋杯軟件類決賽真題&lpar;C語言B組&rpar;

目錄 1 年齡巧合 2 出棧次序 3 信號匹配 4 生物芯片 5 Log大俠 6 殖民地 ? 前言:以下代碼僅供參考,若有錯誤歡迎指正哦~ 1 年齡巧合 小明和他的表弟一起去看電影,有人問他們的年齡. ...

算法筆記&lowbar;208&colon;第六屆藍橋杯軟件類決賽真題&lpar;Java語言A組&rpar;

目錄 1 胡同門牌號 2 四階幻方 3 顯示二叉樹 4 穿越雷區 5 切開字符串 6 鋪瓷磚 ? 前言:以下代碼僅供參考,若有錯誤歡迎指正哦~ 1 胡同門牌號 標題:胡同門牌號 小明家住在一條胡同里. ...

算法筆記&lowbar;202&colon;第三屆藍橋杯軟件類決賽真題&lpar;Java高職&rpar;

目錄 1 填算式 2 提取子串 3 機器人行走 4 地址格式轉換 5 排日程 ? 前言:以下代碼僅供參考,若有錯誤歡迎指正哦~ 1 填算式 [結果填空] (滿分11分) 看這個算式: ☆☆☆ + ☆☆ ...

算法筆記&lowbar;210&colon;第六屆藍橋杯軟件類決賽真題&lpar;Java語言C組&rpar;

目錄 1 機器人數目 2 生成回文數 3 空心菱形 4 奇怪的數列 5 密文搜索 6 居民集會 前言:以下代碼僅供參考,若有錯誤歡迎指正哦~ 1 機器人數目 標題:機器人數目 少年宮新近郵購了小機器人 ...

算法筆記&lowbar;201&colon;第三屆藍橋杯軟件類決賽真題&lpar;Java本科&rpar;

目錄 1?數量周期 2?提取子串 3?源碼變換 4?古代賭局 5?火柴游戲 ? 前言:以下代碼僅供參考,若有錯誤歡迎指正哦~ 1?數量周期 [結果填空](滿分9分) 復雜現象背后的推動力,可能是極其簡 ...

算法筆記&lowbar;200&colon;第三屆藍橋杯軟件類決賽真題&lpar;C語言本科&rpar;

目錄 1?星期幾 2?數據壓縮 3?拼音字母 4 DNA比對 5?方塊填數 ? 前言:以下代碼部分僅供參考,若有不當之處,還望路過同學指出哦~ 1?星期幾 1949年的國慶節(10月1日)是星期六. ...

算法筆記&lowbar;199&colon;第二屆藍橋杯軟件類決賽真題&lpar;C語言本科&rpar;

前言:以下代碼部分僅供參考,C語言解答部分全部來自網友,Java語言部分部分參考自網友,對于答案的正確性不能完全保證. 試題1 數論中有著名的四方定理:所有自然數至多只要用四個數的平方和就可以表示. ...

隨機推薦

【PRINCE2是什么】PRINCE2認證之七大原則(6)

我們先來回顧一下,PRINCE2七大原則分別是持續的業務驗證,經驗學習,角色與責任,按階段管理,例外管理,關注產品,剪裁 第六個原則:關注產品 PRINCE2指出,一個成功的項目必須以產品為導向,而不 ...

&lbrack;轉&rsqb;在EntityFramework6中執行SQL語句

本文轉自:http://www.cnblogs.com/wujingtao/p/5412329.html 在上一節中我介紹了如何使用EF6對數據庫實現CRDU以及事務,我們沒有寫一句SQL就完成了所有 ...

C&num;代碼反編譯 得到項目可運行源碼

C#代碼反編譯 得到項目可運行源碼 摘自:http://www.cnblogs.com/know/archive/2011/03/15/1985026.html 談到"C#代碼反編譯&quo ...

越獄后想禁用Spotlight

如果你的是ios7越獄后不想用Spotlight搜索功能,大老板源的NoSpot ios7可輕松幫你實現.親測可用……………………

TRUNCATE與 DELETE

源地址:http://zhidao.baidu.com/link?url=9zB64BuXiAXNPF-zxvd6VLGTKb2FsUzQ-FsRAeQaYzycOGT5uGPXb-oB44TuYoP ...

gridcontrol datatemplate trigger

總結

以上是生活随笔為你收集整理的金蝉素数c语言,算法笔记_204:第四届蓝桥杯软件类决赛真题(Java语言C组)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产原创91| 国产精品久久久久久久久免费桃花 | 国产日本在线播放 | 羞羞漫画在线 | 少女忠诚电影高清免费 | 在线视频网 | 色综合福利 | 人人干超碰 | 色综合久久88色综合天天6 | 黄色片在线免费观看 | 中文字幕 日韩有码 | av在线视 | 小柔的裸露日记h | av番号网| 亚洲第四页 | 天天干精品 | 日本a∨视频 | 妞干网这里只有精品 | 黄网站免费视频 | xxxxxx国产 | 四虎精品成人免费网站 | 国产精品久久久久久亚洲毛片 | 亚洲人人爽 | 黄色a级片 | 黄色小说视频网站 | 国产午夜免费福利 | 夜夜操夜夜操 | 国产婷婷精品 | 中国肥胖女人真人毛片 | 欧美一区二区三区视频在线 | 国产xxx69麻豆国语对白 | 国产福利合集 | 午夜在线精品 | 成人国产精品一区二区 | 手机在线看永久av片免费 | 在线免费观看国产视频 | 91天天射 | 欧美激情一二三区 | 欧美日韩观看 | 涩涩网站在线看 | 国产一区在线观看免费 | 亚洲精品一区二区三区婷婷月 | 孕妇毛片 | 男女av | 激情久久婷婷 | 欧美 日韩 国产 中文 | 亚洲视频大全 | 欧美精品黑人猛交高潮 | 天天操天天射天天舔 | 欧美色综合网站 | 日本丰满少妇一区二区三区 | 久久久久久www | 超碰caoprom | www.狠狠插 | 日韩精品中字 | 浪浪视频在线观看 | 看免费毛片| 免费看日批视频 | 日韩av免费 | 三上悠亚人妻中文字幕在线 | 四虎影视国产精品 | 久久婷婷影院 | 337p色噜噜| 国产免费成人在线视频 | 成人欧美一区 | 日韩欧美成人一区二区三区 | 日本少妇色视频 | 国产精品三区四区 | 免费在线播放av | 黄色一级大片在线免费看国产一 | 黄色一级免费网站 | 国产色无码精品视频国产 | 国产精品播放 | 成人91视频 | 男生把女生困困的视频 | 91免费版黄色 | 国产一区二区三区免费播放 | 亚洲AV无码成人精品区东京热 | 亚洲一区二区欧美 | 亚洲精品国产精品乱码不卡√香蕉 | av高清一区二区 | 日韩欧美高清在线 | 99国内揄拍国内精品人妻免费 | 亚洲成a人在线观看 | 好吊操这里只有精品 | 中文字幕亚洲色图 | 极品91尤物被啪到呻吟喷水 | 天天干天天要 | 欧美 日韩 国产在线 | 韩日av| 日本三级在线 | 午夜影院一区二区 | 捆绑少妇玩各种sm调教 | 加勒比视频在线观看 | 精品一区二区人妻 | 涩漫天堂 | 久久婷婷伊人 | www.蜜臀av| 亚洲区自拍偷拍 |