#include<iostream>
#include<math.h>
using namespace std;
int main()
{
int n,a[101],ans=1;
scanf("%d",&n);
for(int i=1;i<n+1;i++)
{
scanf("%d",&a[i]);
}
if(a[1]<0)
{
for(int i=2;i<n+1;i++)
{
if(-a[1]>a[i]&&a[i]>0)
{
ans++;
}
if(-a[1]>a[i])
{
if(a[i]<0)
{
ans++;
}
}
}
}
if(a[1]>0)
{
for(int i=2;i<n+1;i++)
{
if(abs (a[1])<abs (a[i])&&a[i]<0)
{
ans++;
}
}
}
printf("%d",ans);
return 0;
}
這是我寫的源代碼,官方輸入資料是:
5
20 4 -3 -10 -22
官方輸出是 3
而我用dev輸出是2啊,于是系統判錯了 咋回事 迷茫
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/90259.html
標籤:C++ 語言
下一篇:這個內部for回圈為啥要有分號啊?還有,當n%i是0,是假,不滿足回圈,就會跳出去,那為啥會考慮if的printf?請大佬指教.謝謝!
