Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 15 kết quả

Đề tài: Tìm trong dãy đã cho, dãy các số không giảm dài nhất

  1. #1
    Ngày gia nhập
    12 2010
    Nơi ở
    Hà Nội
    Bài viết
    60

    Angry Tìm trong dãy đã cho, dãy các số không giảm dài nhất

    Viết chương trình nhập 1 dãy n số nguyên từ bán phím (10<=n<=100) vào mảng, kết thúc quá trình nhập = 1 chữ cái. Tìm trong dãy đã cho, dãy các số không giảm dài nhất và in ra màn hình dãy đó. VD: cho dãy 1,2,5,4,6,7; Dãy ko giảm dài nhất là: 1,2,4,6,7.
    hoặc cho dãy 1,2,1,3,3,3 ,5,9 Dãy ko giẩm dài nhất là :1,2,3,3,3,5,9.
    hoặc cho dãy 1,2,5,10,3,4,5,6,7,8 Dãy ko giảm dìa nhất: là 1,2,3,4,5,6,7,8.


    Help me!

  2. #2
    Ngày gia nhập
    09 2008
    Bài viết
    41

    Bạn thử bài này xem đúng ý ko:

    C Code:
    1. #include<stdio.h>
    2. #include<conio.h>
    3. #include<string.h>
    4.  
    5. int main()
    6. {
    7.     int i=0,j,n;
    8.     char c;
    9.     do
    10.     {
    11.         printf("\n Nhap n= ");
    12.         scanf("%d",&n);
    13.     }while(n<10||n>100);
    14.     int a[n];
    15.     for(j=0;j<n;j++)
    16.     {
    17.         c=getchar();
    18.         if(('a'<=c&&c<='z')||('A'<=c&&c<='Z'))
    19.         {
    20.             i--;
    21.             break;
    22.         }
    23.         else
    24.         {
    25.             printf("\n Nhap a[%d]= ",i);
    26.             scanf("%d",&a[i]);
    27.             i++;
    28.         }
    29.     }
    30.     for(j=0;j<i;j++)
    31.     {
    32.         if(a[j]>a[j+1])
    33.         continue;
    34.         printf("%3d",a[j]);
    35.     }
    36.     getch();
    37.     return 0;
    38. }

  3. #3
    Ngày gia nhập
    12 2010
    Nơi ở
    Hà Nội
    Bài viết
    60

    Trích dẫn Nguyên bản được gửi bởi nguyenquanghung Xem bài viết
    Bạn thử bài này xem đúng ý ko:

    C Code:
    1. #include<stdio.h>
    2. #include<conio.h>
    3. #include<string.h>
    4.  
    5. int main()
    6. {
    7.     int i=0,j,n;
    8.     char c;
    9.     do
    10.     {
    11.         printf("\n Nhap n= ");
    12.         scanf("%d",&n);
    13.     }while(n<10||n>100);
    14.     int a[n];                                  // sao lại thế này đc??
    15.     for(j=0;j<n;j++)
    16.     {
    17.         c=getchar();
    18.         if(('a'<=c&&c<='z')||('A'<=c&&c<='Z'))
    19.         {
    20.             i--;
    21.             break;
    22.         }
    23.         else
    24.         {
    25.             printf("\n Nhap a[%d]= ",i);
    26.             scanf("%d",&a[i]);
    27.             i++;
    28.         }
    29.     }
    30.     for(j=0;j<i;j++)
    31.     {
    32.         if(a[j]>a[j+1])
    33.         continue;
    34.         printf("%3d",a[j]);
    35.     }
    36.     getch();
    37.     return 0;
    38. }
    ko đúng rồi bạn ơi
    mình cho dãy này nhé
    1,2,5,9,3,4,5,6,7,8
    thì nếu giả sử chương trình bạn chạy đc thì nó sẽ in ra 9! hết! vì chỉ có tại a[j]=9<a[j+1]=3!

  4. #4
    Ngày gia nhập
    01 2010
    Nơi ở
    Hà Nội
    Bài viết
    128

    Mình chẳng hiểu cái dãy không giảm dài nhất của bạn là dãy sao nữa . Bạn hãy đưa ra 1 định nghĩa rõ ràng nhé !
    Mình ví dụ : 1213131345 thì dãy cần tìm là gì ?
    Bạn hãy đưa ra quy tắc thành lập chứ đừng đưa ra ví dụ .

  5. #5
    Ngày gia nhập
    12 2010
    Nơi ở
    Hà Nội
    Bài viết
    60

    Trích dẫn Nguyên bản được gửi bởi kids301090 Xem bài viết
    Mình chẳng hiểu cái dãy không giảm dài nhất của bạn là dãy sao nữa . Bạn hãy đưa ra 1 định nghĩa rõ ràng nhé !
    Mình ví dụ : 1213131345 thì dãy cần tìm là gì ?
    Bạn hãy đưa ra quy tắc thành lập chứ đừng đưa ra ví dụ .
    thì nó là 1,2,3,3,3,4,5
    cái này mình ko định nghĩa đc chỉ có thể hiểu qua VD thôi!

  6. #6
    Ngày gia nhập
    01 2010
    Nơi ở
    Hà Nội
    Bài viết
    128

    Mặc định Tìm trong dãy đã cho, dãy các số không giảm dài nhất

    vậy tại sao không phải là :1111233345 ? Bạn ạ giải quyết 1 bài toán bằng lập trình mà không có định nghĩa cũng như quy tắc thì sao bạn có thể lập trình được ? nếu bạn chỉ hiểu như vậy thì rất khó để mọi người giúp bạn vì đây là thảo luận trực tuyến .

  7. #7
    Ngày gia nhập
    12 2010
    Nơi ở
    Hà Nội
    Bài viết
    60

    lạy chúa và thánh thần a men! Đề bài ra như thế mình biết trả lời bạn ra sao
    p/s: nếu ngay từ đầu dãy là 1111233345 thì nó sẽ in ra đúng như thế :1111233345 vì nó là dãy ko giảm dài nhất
    Mình chịu ko thể giải thích hơn đc nữa !mà kể cả có face to face thì mình cũng chỉ nói đc thế hihi!
    "đề bài nguyên văn chỉ đấy"

  8. #8
    Ngày gia nhập
    05 2011
    Bài viết
    299

    1 2 1 3 1 3 1 3 4 5
    1 2 3 3 3 4 5
    bạn Kids để ý kỹ dãy ban đầu với dãy kết quả là thấy cái dãy không giảm của chủ topic như thế nào liền hà
    mình chưa code bài này dc
    Programming tutorials and source code examples

    Trong nhà không vợ không con
    Uống bia gặm thịt sao ngon thế này
    Nhậu nhẹt không bị la rầy
    Một tuần ta cứ bảy ngày " nâng ly "....

  9. #9
    Ngày gia nhập
    09 2008
    Bài viết
    41

    Xin lỗi bạn mình chỉ nhìn ví dụ đầu tiên mà làm

  10. #10
    Ngày gia nhập
    09 2009
    Nơi ở
    Hoa sơn tuyệt đỉnh
    Bài viết
    407

    Dùng qui hoạch động gọi f[i] là dãy con dài nhất khi xét đến số thứ i
    f[i]=1+ max( f[j]| j<i & a[j]<=a[i] )
    Độ phức tạp n^2 có thể cải tiến xuống nlogn

    my houses
    my school
    tỐnG lÊ cHâN mAnG kỶ nIệM bUồN cHo AnH...

Các đề tài tương tự

  1. Trả lời: 0
    Bài viết cuối: 04-08-2012, 03:03 PM
  2. Trả lời: 0
    Bài viết cuối: 04-08-2012, 02:40 PM
  3. Bài tập C giải thích dùm mình lỗi hàm trong bài nhập 1 mảng tìm già trị lớn nhất
    Gửi bởi khoaitayran2012 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 10
    Bài viết cuối: 06-06-2012, 07:37 AM
  4. tính số lớn thứ 2 trong dãy số nhập từ bàn phím! với cách giải nhanh nhất!
    Gửi bởi conganhbn91 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 22
    Bài viết cuối: 05-08-2011, 03:26 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn