Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int main(){
- long long a, b;
- unsigned long long a0, b0;
- char s1 = 0, s2 = 0;
- scanf("%lld%lld", &a, &b);
- if(a < 0){
- s1 = 1;
- a0 = -a;
- }
- else{
- a0 = a;
- }
- if(b < 0){
- s2 = 1;
- b0 = -b;
- }
- else{
- b0 = b;
- }
- if((s1 == 1) && (s2 == 1)){
- //负 负
- if(((a0 == 9223372036854775808ull) && (b0 == 9223372036854775808ull)) || (a0 + b0 > 9223372036854775808ull)){
- puts("NO!");
- }
- else{
- printf("%lld\n", a + b);
- }
- }
- else if((s1 == 0) && (s2 == 1)){
- //正 负
- printf("%lld\n", a + b);
- }
- else if((s1 == 1) && (s2 == 0)){
- //负 正
- printf("%lld\n", a + b);
- }
- else{
- //正 正
- if(a0 + b0 > 9223372036854775807ull){
- puts("PO!");
- }
- else{
- printf("%lld\n", a + b);
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement