#include <bits/stdc++.h>
using namespace std;
int main(int argc, char** argv){
unsigned long long int a,b,c,d,e,f,g;
cin>>a>>b>>c>>d>>e>>f;
if(abs(c-a)<=abs(e-a))
g=abs(c-a);
else
g=abs(e-a);
if(abs(d-b)>=abs(f-b))
cout<<g+abs(f-b)<<endl;
else
cout<<g+abs(d-b)<<endl;
}
這個code是CE
正常來說CE是指編譯錯誤
也就是說這裡CE
DEV C++也是無法運行的
如果是這樣
那為什麼我在DEV C++可運行的
這會拿到ce?
#include <bits/stdc++.h>
using namespace std;
int main(int argc, char** argv){
unsigned long long int a,b,c,d,e,f,g;
cin>>a>>b>>c>>d>>e>>f;
if(abs(c-a)<=abs(e-a))
g=abs(c-a);
else
g=abs(e-a);
if(abs(d-b)>=abs(f-b))
cout<<g+abs(f-b)<<endl;
else
cout<<g+abs(d-b)<<endl;
}
你把變數宣告成 long long int 就好,但是改了還是會 NA
不需要用絕對值,以 X 範圍 3 ~ 8 為例
如果 鳥在 X = 1,只要加 3 - 1 ;鳥在 X = 10,只要加 10 - 8;鳥在 X = 5,不用加
你的判斷是第一個不成立,就一定加第二個,或許我上一篇說的不夠詳細,總之你要改 if-else
#include <bits/stdc++.h>
using namespace std;
int main(int argc, char** argv){
unsigned long long int a,b,c,d,e,f,g;
cin>>a>>b>>c>>d>>e>>f;
if(abs(c-a)<=abs(e-a))
g=abs(c-a);
else
g=abs(e-a);
if(abs(d-b)>=abs(f-b))
cout<<g+abs(f-b)<<endl;
else
cout<<g+abs(d-b)<<endl;
}
你把變數宣告成 long long int 就好,但是改了還是會 NA
不需要用絕對值,以 X 範圍 3 ~ 8 為例
如果 鳥在 X = 1,只要加 3 - 1 ;鳥在 X = 10,只要加 10 - 8;鳥在 X = 5,不用加
你的判斷是第一個不成立,就一定加第二個,或許我上一篇說的不夠詳細,總之你要改 if-else
謝謝大大講解
但我更好奇的是CE這回事
照理講我在怎麼樣也不會CE啊
#include <bits/stdc++.h>
using namespace std;
int main(int argc, char** argv){
unsigned long long int a,b,c,d,e,f,g;
cin>>a>>b>>c>>d>>e>>f;
if(abs(c-a)<=abs(e-a))
g=abs(c-a);
else
g=abs(e-a);
if(abs(d-b)>=abs(f-b))
cout<<g+abs(f-b)<<endl;
else
cout<<g+abs(d-b)<<endl;
}
你把變數宣告成 long long int 就好,但是改了還是會 NA
不需要用絕對值,以 X 範圍 3 ~ 8 為例
如果 鳥在 X = 1,只要加 3 - 1 ;鳥在 X = 10,只要加 10 - 8;鳥在 X = 5,不用加
你的判斷是第一個不成立,就一定加第二個,或許我上一篇說的不夠詳細,總之你要改 if-else
謝謝大大講解
但我更好奇的是CE這回事
照理講我在怎麼樣也不會CE啊
abs(unsigned)在ZJ的編譯器會CE