23 条题解
-
0
#include<iostream> #include<string> #include<cstring> #include<cstdio> using namespace std; const int N = 1005; struct bign { int len,s[N]; bign() { memset(s,0,sizeof(s)); len=1; } bign(int num) { *this=num; } bign(char *num) { *this=num; } bign operator =(int num) { char c[N]; sprintf(c,"%d",num); *this=c; return *this; } bign operator =(const char *num) { len=strlen(num); for (int i=0;i<len;i++) s[i]=num[len-1-i]-'0'; return *this; } string str() { string res=""; for (int i=0;i<len;i++) res=(char)(s[i]+'0')+res; return res; } void clean() { while (len>1&&!s[len-1]) len--; } bign operator +(const bign &b) { bign c; c.len=0; for (int i=0,g=0;g||i<len||i<b.len;i++) { int x=g; if (i<len) x+=s[i]; if (i<b.len) x+=b.s[i]; c.s[c.len++]=x%10; g=x/10; } return c; } bign operator -(const bign &b) { bign c; c.len=0; int x; for (int i=0,g=0;i<len;i++) { x=s[i]-g; if (i<b.len) x-=b.s[i]; if (x>=0) g=0; else{ x+=10; g=1; }; c.s[c.len++]=x; } c.clean(); return c; } bign operator *(const bign &b) { bign c; c.len=len+b.len; for (int i=0;i<len;i++) for (int j=0;j<b.len;j++) c.s[i+j]+=s[i]*b.s[j]; for (int i=0;i<c.len-1;i++) { c.s[i+1]+=c.s[i]/10; c.s[i]%=10; } c.clean(); return c; } bool operator <(const bign &b) { if (len!=b.len) return len<b.len; for (int i=len-1;i>=0;i--) if (s[i]!=b.s[i]) return s[i]<b.s[i]; return false; } bign operator +=(const bign &b) { *this=*this+b; return *this; } bign operator -=(const bign &b) { *this=*this-b; return *this; } }; istream& operator >>(istream &in,bign &x) { string s; in>>s; x=s.c_str(); return in; } ostream& operator <<(ostream &out,bign &x) { out<<x.str(); return out; } int main(){ bign a,b,c; ios::sync_with_stdio(false); cin>>a>>b; // cout<<a<<endl; // cout<<b<<endl; c=a+b; cout<<c<<endl; return 0; }
-
0
#include<cstdio> #include<cstring> #include<cstdlib> #include<algorithm> using namespace std; struct node{ int str[26]; int sum; }s[1000]; char str1[100]; int t=0,tot=0,ss=0; bool f1; void built() { t=0; for(int i=0;i<strlen(str1);i++) { if(str1[i]=='-'){ f1=true;continue; } if(!s[t].str[str1[i]-'0']) s[t].str[str1[i]-'0']=++tot; t=s[t].str[str1[i]-'0']; s[t].sum=str1[i]-'0'; } } int query() { int t=0;int s1=0; for(int i=0;i<strlen(str1);i++) { if(str1[i]=='-') continue; if(!s[t].str[str1[i]-'0']) return s1; t=s[t].str[str1[i]-'0']; s1=s1*10+s[t].sum; } return s1; } int main() { for(int i=1;i<=2;i++) { f1=false; scanf("%s",str1); built(); if(f1) ss-=query(); else ss+=query(); } printf("%d",ss); return 0; }
-
0
#include<bits/stdc++.h> #define yuasfy7189dyjkwqafyi7ahakjsfgb872314fg7b8qgcrg4cagujbyrf67b4gs using #define tqgyfduasyufasfg3814aw678f432yasd6f7g32yaw687f34fae6fuaafdsag86yg5234fg9gy namespace #define ydwuiygtqffafyut34gf78bgasg67f8afgf4367ffasd1tygf9q67f342avs6f7ys6adfyvuyayhufd std yuasfy7189dyjkwqafyi7ahakjsfgb872314fg7b8qgcrg4cagujbyrf67b4gs tqgyfduasyufasfg3814aw678f432yasd6f7g32yaw687f34fae6fuaafdsag86yg5234fg9gy ydwuiygtqffafyut34gf78bgasg67f8afgf4367ffasd1tygf9q67f342avs6f7ys6adfyvuyayhufd; #define ttttyuasfgqewrgvbdfchjafashgfjq3uy long #define fgtdhsajfgejykfgyagsdgyfkafgrewgfasdtasasdjksdaf 0 #define uyftgdasjkhfgadsyufsdahjfgasdfjasdfgdsa return #define eqtryuiwqfgghashjfgcasdfcasfdsafgjherwbvuyfa long #define qweyuasdfhdsabjfghafdsgfvuqewrgftvfuayjdsfasdjyttfgvdsaghsda main #define rtqyuwefgdsjhavfasgjvfgrweqfybvdastfvbyutqwerkyufttyu <% #define tftasdjferwgqjtyufkgyudgvafadsyjfsdaykjfgasdyfgvsdjjfh %> ttttyuasfgqewrgvbdfchjafashgfjq3uy eqtryuiwqfgghashjfgcasdfcasfdsafgjherwbvuyfa fagydfdeykajfviureqgfhdasvtyujdasfgdsatyfgjhtfgajsdfdasdffasdgrgsfdfads; eqtryuiwqfgghashjfgcasdfcasfdsafgjherwbvuyfa ttttyuasfgqewrgvbdfchjafashgfjq3uy hgfyuafujerwbgvfkdgasfjhasdtyweqrfygdtsajfgsdajyhuftgdsajtyudasfsadthftgsadhfjdasgfjasdgfhjghjsahdfghasdf; #define gfydufkafyergwfjhdasfsdakjufytgdsafgutdsamfygsdatytugfhfvadsdsa scanf #define fygiuasdkjfywerqyfiqwegfvyhsafvaskhjfgdshkjfgsdafygkdsagftgdsayjf printf int qweyuasdfhdsabjfghafdsgfvuqewrgftvfuayjdsfasdjyttfgvdsaghsda() rtqyuwefgdsjhavfasgjvfgrweqfybvdastfvbyutqwerkyufttyu gfydufkafyergwfjhdasfsdakjufytgdsafgutdsamfygsdatytugfhfvadsdsa("%lld%lld",&fagydfdeykajfviureqgfhdasvtyujdasfgdsatyfgjhtfgajsdfdasdffasdgrgsfdfads,&hgfyuafujerwbgvfkdgasfjhasdtyweqrfygdtsajfgsdajyhuftgdsajtyudasfsadthftgsadhfjdasgfjasdgfhjghjsahdfghasdf); fygiuasdkjfywerqyfiqwegfvyhsafvaskhjfgdshkjfgsdafygkdsagftgdsayjf("%lld",fagydfdeykajfviureqgfhdasvtyujdasfgdsatyfgjhtfgajsdfdasdffasdgrgsfdfads+hgfyuafujerwbgvfkdgasfjhasdtyweqrfygdtsajfgsdajyhuftgdsajtyudasfsadthftgsadhfjdasgfjasdgfhjghjsahdfghasdf); uyftgdasjkhfgadsyufsdahjfgasdfjasdfgdsa fgtdhsajfgejykfgyagsdgyfkafgrewgfasdtasasdjksdaf; tftasdjferwgqjtyufkgyudgvafadsyjfsdaykjfgasdyfgvsdjjfh
写成这样了,居然还能跑。
信息
- ID
- 6800
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 1
- 标签
- 递交数
- 784
- 已通过
- 304
- 上传者