時間限制:3000 ms | 記憶體限制:65535 kb
難度:2
描述給你兩個很大的數,你能不能判斷出他們兩個數的大小呢?
比如123456789123456789要大於-123456
輸入每組測試資料佔一行,輸入兩個不超過1000位的10進製整數a,b
資料保證輸入的a,b沒有字首的0。
如果輸入0 0表示輸入結束。測試資料組數不超過10組
輸出如果a>b則輸出「a>b」,如果a樣例輸入
111111111111111111111111111 88888888888888888888樣例輸出-1111111111111111111111111 22222222
0 0
a>ba1//nyoj-比大小2//
大數模板
3 #include4 #include5 #include6 #include7
using
namespace
std;
8#define maxn 9999
9#define maxsize 10
10#define dlen 4
11char str1[1002],str2[1002
];12
class
bignum
13
19 bignum(const
char*);
20bool
operator > (const bignum & t)const
; 21
}; 22 bignum::bignum(const
char*s)40}
41bool bignum::operator>(const bignum & t) const42
56else
57return
false
; 58}59
60int
main()
65bignum big1(str1);
66bignum big2(str2);
67if(strcmp(str1,str2) == 0
)else
if(str1[0] == '
-' && str2[0] == '-'
)else
if(str1[0] == '
-' && str2[0] != '-'
)else
if(str2[0] == '
-' && str1[0] != '-'
)else
78}79return0;
80 }
1//最優解
2 #include3 #include
4using
namespace
std;56
intmain()721
else
if(a>"
0"&&b>"
0"||a<"
0"&&b<"
0"&&a.length()>b.length()||a>b)
22 cout<<"
a>b
"<23else
if(a<"
0"&&b>"
0"&&a.length()>b.length()||a>b)
24 cout<<"
a"<2526
}27 }
NYOJ 題目73 比大小
描述 給你兩個很大的數,你能不能判斷出他們兩個數的大小呢?比如123456789123456789要大於 123456 輸入 每組測試資料佔一行,輸入兩個不超過1000位的10進製整數a,b 資料保證輸入的a,b沒有字首的0。如果輸入0 0表示輸入結束。測試資料組數不超過10組 輸出如果a b則輸出...
NYOJ 大數階乘
描述 我們都知道如何計算乙個數的階乘,可是,如果這個數很大呢,我們該如何去計算它並輸出它?輸入 輸入乙個整數m 0 m 5000 輸出 輸出m的階乘,並在輸出結束之後輸入乙個換行符 樣例輸入 樣例輸出 include include define max 20000 最大數5000 5000 4 i...
NYOJ 尋找最大數
時間限制 1000 ms 記憶體限制 65535 kb 難度 2描述 請在整數 n 中刪除m個數字,使得餘下的數字按原次序組成的新數最大,比如當n 92081346718538,m 10時,則新的最大數是9888輸入 第一行輸入乙個正整數t,表示有t組測試資料 每組測試資料佔一行,每行有兩個數n,m...