因為要參加藍橋杯,琢磨了一下算法,原來數學不好是這么難搞:下面是一些藍橋杯的試題(習題)。我用的是java ,我看網上的人多數用的是c語言。有更好的方法希望可以分享一下下。
創新互聯專注于企業網絡營銷推廣、網站重做改版、瑞安網站定制設計、自適應品牌網站建設、H5建站、商城網站開發、集團公司官網建設、成都外貿網站建設公司、高端網站制作、響應式網頁設計等建站業務,價格優惠性價比高,為瑞安等各大城市提供網站開發制作服務。
1. 有50枚硬幣,可能包括4種類型:1元,5角,1角,5分。已知總價值為20元。求各種硬幣的數量。
比如:2,34,6,8 就是一種答案。
而 2,33,15,0 是另一個可能的答案,顯然答案不唯一。
你的任務是確定類似這樣的不同的方案一共有多少個(包括已經給出的2個)?
{ 可以看出這里的硬幣數量和存在著 1元×20+5角×10+1角×2+5分=400 這樣的關系的分類才符合題目的要求}
2.四平方和(程序設計)四平方和的定理又稱拉格朗日定理:每個正整數都可以表示至多4個正整數的平方和。如果把0包括進去,就可以表示為4個數的平方和。
比如:
5=0^2+0^2+1^2+2^2 7=1^2+1^2+1^2+2^2
對于一個給定的正整數,可能存在多種平方和的表示法。要求你4個數排序: 0<=a<=b<=c<=d并對所有的可能表示法按 a,b,c,d為聯合主鍵升序排列,最后輸出第一個表示法。程序輸入為一個正整數N(N<5000000),要求輸出4個非負整數,按從小到大排序,中間用空格分開,如,輸入5
則程序輸出:
0 0 1 2
資源約定:
峰值內存消耗(含虛擬機) < 256M CPU消耗 < 3000ms
請嚴格按要求輸出,不要畫蛇添足地打印類似:“請您輸入...” 的多余內容。
(這里演示了沒有用return 的情況,結果會把多種情況輸出,我們的最終答案只要第一中升序結果,所以,做題時一定要看清題目,這里是給我自己的忠告。)
3.區間第K大的數
1.第一行輸入序列的個數n
2.第二行輸入一個序列
3.第三行輸入區間個數
4.輸入l ,r,k; l :區間的開始 r : 區間的結束 k ; 第k個大的數
下標從1開始
import java.util.Scanner; public class MainR { /*尋找第k大的數*/ public void findK(int a[],int b[]){ int l,r,k,i,j; l=b[0]; r=b[1]; k=b[2]; int w=r-l+1; int[] c=new int[w];//存放區間的序列 for(i=0;i<w;i++){ c[i]=a[l-1]; l+=1; if(l==(r+1))//當l==r+1時,區間序列達到最后一個 break; } int small; for(i=0;i<c.length;i++){ for(j=i+1;j<c.length;j++){ if(c[i]<c[j]){ small=c[i]; c[i]=c[j]; c[j]=small; } } } System.out.println(c[k-1]); } public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); int n=in.nextInt();//序列的個數 //給定序列 int array[]=new int[n]; int i,j; for(i=0;i<n;i++){ array[i]=in.nextInt(); } //區間個數 int m=in.nextInt(); //l r k int[] bArray[]=new int[m][3]; for(i=0;i<m;i++){ for(j=0;j<3;j++){ bArray[i][j]=in.nextInt(); } } MainR w; for(i=0;i<m;i++){ w=new MainR(); w.findK(array, bArray[i]); } in.close(); } }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持創新互聯。
新聞標題:java藍橋杯試題
轉載來源:http://m.newbst.com/article34/jeegpe.html
成都網站建設公司_創新互聯,為您提供、商城網站、搜索引擎優化、網頁設計公司、品牌網站設計、手機網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯