不知為何就是一直錯誤...
#include <iostream>
#include <stdlib.h>
#define N 100001
using namespace std;
int partition(int m[], int p, int r)
{
int i=p-1, j, t, x=m[r];
for(j=p;j<r;j++)
{
if(m[j]>m[r])
{
t=m[++i];
m[i]=m[j];
m[j]=t;
}
}
t=m[r];
m[r]=m[++i];
m[i]=t;
return i;
}
void quick_sort(int m[], int p, int r)
{
if(p<r)
{
int q=partition(m, p, r);
quick_sort(m, p, q-1);
quick_sort(m, q+1, r);
}
}
int main()
{
int i, m[N], l=0;
while(cin>>m[l++]);
quick_sort(m, 0, l-1);
cout<<m[0];
for(i=1;i<l;i++)
cout<<' '<<m[i];
return 0;
}
不知為何就是一直錯誤...
#include
#include
#define N 100001
using namespace std;
int partition(int m[], int p, int r)
{
int i=p-1, j, t, x=m[r];
for(j=p;j
{
if(m[j]>m[r])
{
t=m[++i];
m[i]=m[j];
m[j]=t;
}
}
t=m[r];
m[r]=m[++i];
m[i]=t;
return i;
}
void quick_sort(int m[], int p, int r)
{
if(p
{
int q=partition(m, p, r);
quick_sort(m, p, q-1);
quick_sort(m, q+1, r);
}
}
int main()
{
int i, m[N], l=0;
while(cin>>m[l++]);
quick_sort(m, 0, l-1);
cout<
for(i=1;i
cout<<' '<
return 0;
}
Um . . 在一般(大部分)情況下
快排 用內建的函數就可以了
bool cmp(int a, int b){
return a<n; // 小到大排序
}
int main(){
int a[5]={6,4,2,8,5};
sort(a,a+5,cmp);
}
Um . . 在一般(大部分)情況下
快排 用內建的函數就可以了
bool cmp(int a, int b){
return a
}
int main(){
int a[5]={6,4,2,8,5};
sort(a,a+5,cmp);
}
一樣有錯...應該不是排序的問題><"
#include <iostream>
#include <stdlib.h>
#define N 100001
using namespace std;
int cmp(int a, int b)
{
return a>b;
}
int main()
{
int i, m[N], l=0;
while(cin>>m[l++]);
sort(m, m+l, cmp);
cout<<m[0];
for(i=1;i<l;i++)
cout<<' '<<m[i];
return 0;
}
貌似不是這樣,不過還是很感謝你呀~錯誤資訊如下所示:
*** 第 1 點 (100%):WA (line:1)
您的答案為: 32767 32767 32767 32766 32766 32766 32766 32766 32765 32765 32765 32764 32764 32764 32764 32764 32764 32762 32762 32762 32762 32762 32761 32761 32760 32760 32760 32760 32759 32758 32758 32758 32758 32758 32758 32757 32756 32756 32755 32755 32755 32755 32754 32754 32754 32754 32754 32754 32753 32752 32752 32752 32752 32751 32751 32750 32750 32750 32750 32749 32749 32748 32748 32748 32747 32747 32747 32746 32745 32745 32745 32745 32744 32744 32744 32743 32743 32743 32742 32741 32741 32740 32740 32740 32740 32739 32739 32739 32739 32739 32738 32738 32738 32738 32737 32737 32737 32736 32736 32736 32736 32735 32735 32735 32735 32734 32734 32734 32733 32733 32732 32732 32732 32731 32731 32730............................(很多很多之後)
錯誤訊息太長,無法完全顯示!!
貌似不是這樣,不過還是很感謝你呀~錯誤資訊如下所示:
*** 第 1 點 (100%):WA (line:1)
您的答案為: 32767 32767 32767 32766 32766 32766 32766 32766 32765 32765 32765 32764 32764 32764 32764 32764 32764 32762 32762 32762 32762 32762 32761 32761 32760 32760 32760 32760 32759 32758 32758 32758 32758 32758 32758 32757 32756 32756 32755 32755 32755 32755 32754 32754 32754 32754 32754 32754 32753 32752 32752 32752 32752 32751 32751 32750 32750 32750 32750 32749 32749 32748 32748 32748 32747 32747 32747 32746 32745 32745 32745 32745 32744 32744 32744 32743 32743 32743 32742 32741 32741 32740 32740 32740 32740 32739 32739 32739 32739 32739 32738 32738 32738 32738 32737 32737 32737 32736 32736 32736 32736 32735 32735 32735 32735 32734 32734 32734 32733 32733 32732 32732 32732 32731 32731 32730............................(很多很多之後)
錯誤訊息太長,無法完全顯示!!
你陣列宣告的形態是 short 嗎?
32767 讓我覺得 ..... 有溢位 .... @@"
可以自己測測看 ~
我當初這題是用qsort寫的 (另外一個內建快排函數)
我是用 int m[N] , #define N 100001應該沒有溢位的問題, 我已經放棄這題囉, 玩玩其他題目
話說用F6或^Z好像可以當EOF
這樣就可以測試看看了