程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> hdu 2019,hdu

hdu 2019,hdu

編輯:關於C語言

hdu 2019,hdu


Problem Description 有n(n<=100)個整數,已經按照從小到大順序排列好,現在另外給一個整數x,請將該數插入到序列中,並使新的序列仍然有序。   Input 輸入數據包含多個測試實例,每組數據由兩行組成,第一行是n和m,第二行是已經有序的n個數的數列。n和m同時為0標示輸入數據的結束,本行不做處理。   Output 對於每個測試實例,輸出插入新的元素後的數列。   Sample Input 3 3 1 2 4 0 0   Sample Output 1 2 3 4     #include<stdio.h>
int main()
{
 int n,m,i,j,temp,cnt;
 int str[101];
 while(scanf("%d%d",&n,&m)!=EOF){
  if(n==0 && m==0) return 0;
  else{
   for(i=0;i<n;i++){
    scanf("%d",&str[i]);
   }
   if(str[n-1]<=m) str[n]=m;
   else{
    for(i=0;i<n-1;i++){
     if(str[i]<m && str[i+1]>=m){
      cnt=i;
      for(j=n+1;j>cnt+1;j--){
       str[j]=str[j-1];
      }
      str[cnt+1]=m;
     }
    }
   }
   for(i=0;i<n+1;i++){
    printf("%d",str[i]);
    if(i<n) printf(" ");
    else printf("\n");
   }
  }
 }
 return 0;
}       tip: 數組的大小設置,還要插入位置的判斷,前面小於,後面大於等於,或前面有等號,後面沒有

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved