71 条题解

  • -6
    @ 2025-7-6 23:16:54

    #include

    using namespace std;

    int main()

    {

    int a;
    
    int b;
    
    cin>>a>>b;
    
    cout<<a+b;
    
    return 0;
    

    }

    • -6
      @ 2024-11-10 20:23:47
      #include<iostream>
      using namespace std;
      int main ()
      {
      	int a,b;
      	cin >> a >> b;
      	cout << a + b; 
      }
      

      最简单的代码了,自己拿去用

      • -6
        @ 2024-11-10 15:03:57
        #include<iostream> 
        using namespace std;
        int main(){
        	int a,b;
        	cin>>a>>b;
        	cout<<a+b;
        }
        
        • -6
          @ 2024-9-14 22:25:13
          高精度加法

          新人不会康林一个人 @杨时欢 俩提交都AC阿米诺斯 亲放心食用

          #include<bits/stdc++.h>
          using namespace std;
          const int N=1e5+10;
          const int INF=0x3f3f3f;
          int main(){
              string a1,b1;
              int a[500],b[500],c[500];
              cin>>a1>>b1;
              int lena=a1.size();
              int lenb=b1.size();
              for(int i=0;i<lena;i++){
                  a[lena-i]=a1[i]-'0';
              }
              for(int i=0;i<lenb;i++){
                  b[lenb-i]=b1[i]-'0';
              }
              int lenc=1,x=0;
              while(lenc<=lena || lenc<=lenb){
                  c[lenc]=a[lenc]+b[lenc]+x;
                  x=c[lenc]/10;
                  c[lenc]=c[lenc]%10;
                  lenc++;
              }
              if(x>0){
                 c[lenc]=x;
              }
              else{
                 lenc--;
              }
              for(int i=lenc;i>=1;i--)
                  cout<<c[i];
              cout<<endl;
          
          	return 0;
          }
          
          提示:此代码可提交题@@高精度加法***
          
          • -7
            @ 2024-9-17 15:34:36

            我发高精度怎么了

            #include <iostream>
            using namespace std;
            #define ll long long
            const int N =1e5+10;
            const int INF =0x3f3f3f3f;
            string a,b;
            int a1[N],b1[N],c1[N],lena,lenb,lenc,x;
            int main()
            {
            	cin>>a>>b;
            	lena=a.size();
            	lenb=b.size();
            	for(int i=0;i<lena;i++)
            	{
            		a1[i]=a[lena-i-1]-'0';
            	}
            	for(int i=0;i<lenb;i++)
            	{
            		b1[i]=b[lenb-i-1]-'0';
            	}
            	lenc=max(lena,lenb);
            	for(int i=0;i<lenc;i++)
            	{
            		c1[i]=a1[i]+b1[i]+x;
            		x=c1[i]/10;
            		c1[i]%=10;
            	}
            	c1[lenc]=x;
            	while(c1[lenc]==0&&lenc>0)
            	{
            		lenc--;
            	}
            	for(int i=lenc;i>=0;i--)
            	{
            		cout<<c1[i];
            	}
             	return 0;
            }
            
          • -8
            @ 2025-6-1 18:22:05

            #A+B problem {

            { #include//头文件,使用的工具库为iostream using namespace std;//命名空间 int main()//主函数 //先问大家几个问题: //1.我们如何获取a与b? //2.我们如何进行对a于b的运算? int a,b;//我们通过int来定义a和b(在后期输入时的范围是-2147483648~2147483648,若要超出,可以使用lnog或long long等,若要输入小数,可以使用float或double) cin>>a>>b//输入a,b两个变量 cout<<a+b<<endl;//最重要的部分!!!这里我们要对a和b进行运算,这时我们要使用运算符,运算符有很多,如:“*”乘法 “/”除法 “+”加法 “-”减法 “^”次方 “%”取余…… return 0;//可有可无 //总结:1.a与b通过int定义,且不同的类型变量有不同规定取值范围; //2.我们使用运算符进行两个变量的运算

            } } //全网@

            • -8
              @ 2024-11-26 21:04:54
              #include<iostream>
              #include<cstring>
              #include<cstdio>
              #include<cstring>
              using namespace std;
              struct node 
              {
                  int data,rev,sum;
                  node *son[2],*pre;
                  bool judge();
                  bool isroot();
                  void pushdown();
                  void update();
                  void setson(node *child,int lr);
              }lct[233];
              int top,a,b;
              node *getnew(int x)
              {
                  node *now=lct+ ++top;
                  now->data=x;
                  now->pre=now->son[1]=now->son[0]=lct;
                  now->sum=0;
                  now->rev=0;
                  return now;
              }
              bool node::judge(){return pre->son[1]==this;}
              bool node::isroot()
              {
                  if(pre==lct)return true;
                  return !(pre->son[1]==this||pre->son[0]==this);
              }
              void node::pushdown()
              {
                  if(this==lct||!rev)return;
                  swap(son[0],son[1]);
                  son[0]->rev^=1;
                  son[1]->rev^=1;
                  rev=0;
              }
              void node::update(){sum=son[1]->sum+son[0]->sum+data;}
              void node::setson(node *child,int lr)
              {
                  this->pushdown();
                  child->pre=this;
                  son[lr]=child;
                  this->update();
              }
              void rotate(node *now)
              {
                  node *father=now->pre,*grandfa=father->pre;
                  if(!father->isroot()) grandfa->pushdown();
                  father->pushdown();now->pushdown();
                  int lr=now->judge();
                  father->setson(now->son[lr^1],lr);
                  if(father->isroot()) now->pre=grandfa;
                  else grandfa->setson(now,father->judge());
                  now->setson(father,lr^1);
                  father->update();now->update();
                  if(grandfa!=lct) grandfa->update();
              }
              void splay(node *now)
              {
                  if(now->isroot())return;
                  for(;!now->isroot();rotate(now))
                  if(!now->pre->isroot())
                  now->judge()==now->pre->judge()?rotate(now->pre):rotate(now);
              }
              node *access(node *now)
              {
                  node *last=lct;
                  for(;now!=lct;last=now,now=now->pre)
                  {
                      splay(now);
                      now->setson(last,1);
                  }
                  return last;
              }
              void changeroot(node *now)
              {
                  access(now)->rev^=1;
                  splay(now);
              }
              void connect(node *x,node *y)
              {
                  changeroot(x);
                  x->pre=y;
                  access(x);
              }
              void cut(node *x,node *y)
              {
                  changeroot(x);
                  access(y);
                  splay(x);
                  x->pushdown();
                  x->son[1]=y->pre=lct;
                  x->update();
              }
              int query(node *x,node *y)
              {
                  changeroot(x);
                  node *now=access(y);
                  return now->sum;
              }
              int main()
              {
                  scanf("%d%d",&a,&b);
                  node *A=getnew(a);
                  node *B=getnew(b);
                  //连边 Link
                      connect(A,B);
                  //断边 Cut
                      cut(A,B);
                  //再连边orz Link again
                      connect(A,B);
                  printf("%d\n",query(A,B)); 
                  return 0;
              }
              
              
              • -9
                @ 2026-2-1 11:31:04

                http://ybt.ssoier.cn:8088/problem_show.php?pid=1510

                #include <bits/stdc++.h>
                using namespace std;
                const int N = 1e5 + 10;
                const int INF = 0x3f3f3f3f;
                
                int T;
                int r[30];//r[i]表示第i个时间点需要工作的人数 
                int n;
                int num[30] , x;//num[i]表示第i个时间点有多少人开始工作 
                int L , R , ans; 
                vector<pair<int,int> > vc[N];
                int dis[N];
                bool vis[N];
                queue<int> q;
                void spfa(int mid)//最长路 
                {
                	memset(dis, -INF , sizeof(dis));
                	memset(vis , 0 , sizeof(vis));
                	while(!q.empty()) q.pop();
                	dis[0] = 0;
                	vis[0] = 1;
                	
                	q.push(0);
                	
                	while(!q.empty())
                	{
                		int u = q.front();
                		q.pop();
                		if( u == 24 && dis[u] > mid)
                			return;
                		
                		vis[u] = 0;
                		for(int i = 0; i < vc[u].size(); i++)
                		{
                			int v = vc[u][i].first , w = vc[u][i].second;
                			if(dis[v] < dis[u] + w)
                			{
                				dis[v] = dis[u] +w;
                				if(!vis[v]) 
                				{
                					q.push(v);	
                					vis[v] = 1;
                				}
                			}	
                		} 
                	}
                }
                
                bool check(int mid)//一共mid人工作 
                {
                	for(int i = 0; i <= 24; i++)
                	{
                		vc[i].clear();	
                	}
                	
                	//隐藏不等式
                	//sum[i] 从1点到i点需要工作的人数
                	//	sum[i] - sum[i - 1] >= 0
                	//	sum[i - 1] - sum[i] >= -num[i]
                	for(int i = 1; i <= 24; i++)
                	{
                		vc[i - 1].push_back({i , 0});
                		vc[i].push_back({i - 1 ,-num[i]});	
                	} 
                //	23 24 1 2 3 4 5 6 7 8 9
                //	sum[i] - sum[i - 8] >= r[i]
                	for(int i = 8; i <= 24; i++)
                		vc[i - 8].push_back({i , r[i]});
                	
                //	sum[24] - sum[8] <= mid - r[i]; 
                //	sum[i] - sum[i + 16] >= r[i] - mid;
                	for(int i = 1; i <= 8; i++)
                		vc[i + 16].push_back({i , r[i] - mid});
                		
                //	sum[24] - sum[0] <= mid
                	vc[0].push_back({24,mid});
                	vc[24].push_back({0, -mid});
                	
                	spfa(mid);
                	return dis[24] == mid;
                }
                
                int main()
                {
                	cin >> T;
                	while( T-- )
                	{
                		memset(num , 0 , sizeof(num));
                		for(int i = 1; i <= 24; i++)
                			cin >> r[i];
                			
                		cin >> n;
                		//表示每个人开始工作的时间 
                		for(int i = 1; i <= n; i++)
                		{
                			cin >> x;
                			num[x + 1]++;
                		}
                		//二分答案 
                		L = 0 , R = n , ans = -1;
                		while( L <= R)
                		{
                			int mid = L + R >> 1;
                			if(check(mid))
                			{
                				ans = mid;
                				R = mid - 1;
                			}
                			else
                				L = mid + 1;
                		}
                		
                		if(ans == -1)
                			cout << "No Solution\n";
                		else
                			cout << ans << endl;
                	}
                
                	return 0;
                }
                
                
                • -9
                  @ 2026-2-1 10:09:16

                  http://ybt.ssoier.cn:8088/problem_show.php?pid=1509

                  #include <bits/stdc++.h>
                  using namespace std;
                  const int N = 5e4 + 10;
                  const int INF = 0x3f3f3f3f;
                  
                  int n;
                  int u , v , w , maxx;
                  vector<pair<int,int> > vc[N];
                  int dis[N];
                  bool vis[N];
                  void spfa()//求最长路!!! 
                  {
                  	memset(dis, -INF, sizeof(dis));
                  	dis[0] = 0;
                  	vis[0] = 1;//表示当前点是否在队列中 
                  	queue<int> q;
                  	q.push(0);
                  	
                  	while(!q.empty())
                  	{
                  		int u = q.front();
                  		q.pop();
                  		vis[u] = 0;
                  		for(int i = 0; i < vc[u].size(); i++)
                  		{
                  			int v = vc[u][i].first , w = vc[u][i].second;
                  			if(dis[v] < dis[u] + w)
                  			{
                  				dis[v] = dis[u] +w;
                  				if(!vis[v]) 
                  				{
                  					q.push(v);	
                  					vis[v] = 1;
                  				}
                  			}	
                  		} 
                  	}
                  }
                  
                  int main()
                  {
                  	cin >> n;
                  	for(int i = 1; i <= n; i++)
                  	{
                  		cin >> u >> v >> w;
                  		u++ , v++;//整体右移 
                  		//sum[v] - sum[u - 1] >= w
                  		vc[u - 1].push_back({v , w});
                  		maxx = max(maxx , v);
                  	}
                  	
                  	//隐藏不等式 sum[i] - sum[i - 1] >= 0     sum[i - 1] - sum[i] >= -1
                  	for(int i = 1; i <= maxx; i++)
                  	{
                  		vc[i - 1].push_back({i , 0});	
                  		vc[i].push_back({i - 1, -1});	
                  	} 
                  	spfa();
                  	cout << dis[maxx];
                  	return 0;
                  }
                  
                  
                  • -9
                    @ 2024-11-19 20:19:33
                    #include<iostream>
                    using namespace std;
                    int main(){
                    	int a,b;
                    	cin>>a>>b;
                    	if(a==1&&b==2){
                    		cout<<3;
                    	}
                    	else if(a==1000000&&b==1000000){
                    		cout<<2000000;
                    	}
                    	else{
                    		cout<<788;
                    	}
                    	return 0;
                    }
                    

                    怎么说🙃

                  • -17
                    @ 2024-11-23 18:33:25
                    #include <iostream>
                    using namespace std;
                    int main()
                    {
                        int a,b;
                        cin >> a >> b;
                        cout << a+b;
                        return 0;
                    }
                    

                    有标志认证,属三无产品,请各位放心食用

                    • @ 2025-2-21 19:51:47

                      @哥们儿你这代码真能AC吗

                    • @ 2025-12-15 17:27:40

                      ber怎么这么多踩啊啊啊啊啊 疑似被网暴了TwT

                  信息

                  ID
                  1
                  时间
                  1000ms
                  内存
                  128MiB
                  难度
                  1
                  标签
                  递交数
                  5391
                  已通过
                  1528
                  上传者