是在一個無法思考的狀態 Orz
int comp(const void *a, const void *b){
return (*(int*)a)-(*(int*)b);
}
bool asteroidsDestroyed(int mass, int* asteroids, int asteroidsSize){
qsort(asteroids,asteroidsSize,sizeof(int),comp);
if (mass < asteroids[0])
return false;
long newMass=mass;
for (int i=0;i<asteroidsSize-1;i++)
{
newMass += asteroids[i];
if (newMass < asteroids[i+1])
return false;
}
return true;
}
然後寫一寫又覺得自己贅步了Orz 應該把array[0]的檢查包進去for 的QQ
int comp(const void *a, const void *b){
return (*(int*)a)-(*(int*)b);
}
bool asteroidsDestroyed(int mass, int* asteroids, int asteroidsSize){
qsort(asteroids,asteroidsSize,sizeof(int),comp);
long newMass=mass;
for (int i=0;i<asteroidsSize;i++)
{
if (newMass <asteroids[i])
return false;
newMass +=asteroids[i];
}
return true;
}
沒有留言:
張貼留言