46 条题解

  • 1
    @ 2026-4-15 13:26:15
    #include<stdio.h>
    int main(){
        int a,b;
        scanf("%d%d",&a,&b);
        printf("%d",a+b);
    }
    
    • 1
      @ 2026-4-15 13:23:53
      
      a=int(input())
      b=int(input())
      print(a+b)
      
      • 1
        @ 2026-4-8 19:18:42
        
        ```#include <bits/stdc++.h>
        using namespace std;
        int main(){
          int a,b,s;
          cin>>a>>b;
          s=a+b;
          cout<<s;
          return 0;
        }
        • 1
          @ 2026-3-22 17:42:07
          #include <bits/stdc++.h>
          using namespace std;
          int main(){
            int a,b,s;
            cin>>a>>b;
            s=a+b;
            cout<<s;
            return 0;
          }
          
          • 1
            @ 2025-10-25 9:33:33
            #include<bits/stdc++.h>
            using namespace std;
            const int N=1e3+10;
            int a,b;
            int main()
            {
            	cin >> a >> b;
            	cout << a+b;
            	return 0;
            }
            
            
            • 0
              @ 2026-4-7 13:02:50

              #include using namespace std; int main() { int a,b; cin>>a>>b; cout<<a+b; return 0; }

              • 0
                @ 2026-3-27 15:15:43
                #include <bits/stdc++.h>
                using namespace std;
                
                int main(){
                    int a, b;
                    cin >> a >> b;
                    cout << a + b << endl;
                    return 0;
                }
                
                • 0
                  @ 2026-2-2 12:29:27
                  #include<bits/stdc++.h>
                  using namespace std;
                  
                  const int N=1e5+5;
                  
                  int n , m , a[N];
                  int u , v;
                  vector<int> vc[N];
                  int dfn[N] , low[N] , cnt;
                  bool vis[N];
                  stack<int> st;
                  int belong_cnt; //强连通分量个数 
                  vector<int> belong[N];//强连通分量 
                  int color[N];//color[i]表示第i头牛所处的强连通分量  
                  vector<int> newvc[N];
                  int in[N];//入度 
                  int ans[N];
                  void tarjan(int u)
                  {
                  	dfn[u] = low[u] = ++cnt;
                  	vis[u] = 1;
                  	st.push(u);
                  	for(int i = 0; i < vc[u].size(); i++)
                  	{
                  		int v = vc[u][i];
                  		if(!dfn[v])
                  		{
                  			tarjan(v);
                  			low[u] = min(low[u] , low[v]);
                  		}
                  		else if(vis[v])
                  		{
                  			low[u] = min(low[u] , low[v]);
                  		}	
                  	}
                  	//强连通分量到头	
                  	if(dfn[u] == low[u])
                  	{
                  		while(!st.empty())
                  		{
                  			v = st.top();
                  			st.pop();
                  			vis[v] = 0;
                  			color[v] = u;//当前牛所处的强连通分量 
                  			if(u == v) break;
                  			a[u] += a[v];
                  		}
                  	}
                  }
                  
                  void tupo()
                  {
                  	queue<int> q;
                  	for(int i = 1; i <= n; i++)
                  	{
                  		if(color[i] == i && !in[i])
                  		{
                  			q.push(i);
                  			ans[i] = a[i];
                  		}
                  	}
                  	
                  	while(!q.empty())
                  	{
                  		int top = q.front();
                  		q.pop();
                  		
                  		for(int i = 0; i < newvc[top].size(); i++)
                  		{
                  			v = newvc[top][i];
                  			ans[v] = max(ans[v] , ans[top] + a[v]);
                  			in[v]--;
                  			if(!in[v])
                  				q.push(v);
                  		}
                  	}
                  	
                  	int maxx = 0;
                  	for(int i = 1; i <= n; i++)
                  		maxx = max(maxx , ans[i]);
                  	cout << maxx;
                  }
                  
                  int main(){
                  	cin >> n >> m;
                  	for(int i = 1; i <= n; i++)
                  		cin >> a[i];
                  	while( m-- )
                  	{
                  		cin >> u >> v;
                  		vc[u].push_back(v); 
                  	}
                  	for(int i = 1; i <= n; i++)
                  		if(!dfn[i])
                  			tarjan(i);
                  	
                  	//重新建边
                  	for(int i = 1; i <= n; i++)
                  	{
                  		for(int j = 0; j < vc[i].size(); j++)
                  		{
                  			v = vc[i][j];
                  			if(color[i] != color[v])
                  			{
                  				newvc[color[i]].push_back(color[v]);
                  				in[color[v]]++; 
                  			}	
                  		}	
                  	} 
                  	
                  	tupo();
                  	
                  	return 0;
                  
                  • 0
                    @ 2026-2-2 12:28:28
                    #include<bits/stdc++.h>
                    using namespace std;
                    
                    const int N=1e5+5;
                    
                    int n , m , a[N];
                    int u , v;
                    vector<int> vc[N];
                    int dfn[N] , low[N] , cnt;
                    bool vis[N];
                    stack<int> st;
                    int belong_cnt; //强连通分量个数 
                    vector<int> belong[N];//强连通分量 
                    int color[N];//color[i]表示第i头牛所处的强连通分量  
                    vector<int> newvc[N];
                    int in[N];//入度 
                    int ans[N];
                    void tarjan(int u)
                    {
                    	dfn[u] = low[u] = ++cnt;
                    	vis[u] = 1;
                    	st.push(u);
                    	for(int i = 0; i < vc[u].size(); i++)
                    	{
                    		int v = vc[u][i];
                    		if(!dfn[v])
                    		{
                    			tarjan(v);
                    			low[u] = min(low[u] , low[v]);
                    		}
                    		else if(vis[v])
                    		{
                    			low[u] = min(low[u] , low[v]);
                    		}	
                    	}
                    	//强连通分量到头	
                    	if(dfn[u] == low[u])
                    	{
                    		while(!st.empty())
                    		{
                    			v = st.top();
                    			st.pop();
                    			vis[v] = 0;
                    			color[v] = u;//当前牛所处的强连通分量 
                    			if(u == v) break;
                    			a[u] += a[v];
                    		}
                    	}
                    }
                    
                    void tupo()
                    {
                    	queue<int> q;
                    	for(int i = 1; i <= n; i++)
                    	{
                    		if(color[i] == i && !in[i])
                    		{
                    			q.push(i);
                    			ans[i] = a[i];
                    		}
                    	}
                    	
                    	while(!q.empty())
                    	{
                    		int top = q.front();
                    		q.pop();
                    		
                    		for(int i = 0; i < newvc[top].size(); i++)
                    		{
                    			v = newvc[top][i];
                    			ans[v] = max(ans[v] , ans[top] + a[v]);
                    			in[v]--;
                    			if(!in[v])
                    				q.push(v);
                    		}
                    	}
                    	
                    	int maxx = 0;
                    	for(int i = 1; i <= n; i++)
                    		maxx = max(maxx , ans[i]);
                    	cout << maxx;
                    }
                    
                    int main(){
                    	cin >> n >> m;
                    	for(int i = 1; i <= n; i++)
                    		cin >> a[i];
                    	while( m-- )
                    	{
                    		cin >> u >> v;
                    		vc[u].push_back(v); 
                    	}
                    	for(int i = 1; i <= n; i++)
                    		if(!dfn[i])
                    			tarjan(i);
                    	
                    	//重新建边
                    	for(int i = 1; i <= n; i++)
                    	{
                    		for(int j = 0; j < vc[i].size(); j++)
                    		{
                    			v = vc[i][j];
                    			if(color[i] != color[v])
                    			{
                    				newvc[color[i]].push_back(color[v]);
                    				in[color[v]]++; 
                    			}	
                    		}	
                    	} 
                    	
                    	tupo();
                    	
                    	return 0;
                    
                    • 0
                      @ 2025-12-14 12:27:47
                      #include <iostream>
                      using namespace std;
                      int main()
                      {
                      	int a,b;
                      	cin>>a>>b;
                      	cout<<a+b;
                      	return 0;
                      }
                      
                      • 0
                        @ 2025-11-22 9:37:06
                        #include<bits/stdc++.h>
                        using namespace std;
                        const int N=1e3+10;
                        int Accepted(int a,int b){//Accepted()
                        	return a+b; 
                        }
                        int main()
                        {
                        	int a,b;
                        	cin >> a >> b;
                        	cout << Accepted(a,b);
                        	return 0;
                        }
                        //老登布置的作业系列
                        
                        
                        • 0
                          @ 2025-11-8 9:43:09
                          #include<bits/stdc++.h>
                          
                          using namespace std;
                          int main()
                          {
                          	string a1,b1;
                          	int a[10000]={},b[10000]={},c[10000]={};
                          	cin >> a1 >> b1;
                          	int lena=a1.size();
                          	int lenb=b1.size();
                          	for(int i=1;i<=lena;i++)
                          	{
                          		a[i]=a1[lena-i]-'0';
                          	} 
                          	for(int i=1;i<=lenb;i++)
                          	{
                          		b[i]=b1[lenb-i]-'0';
                          	}  
                          	int lenc=1;
                          	while(lenc<=lena||lenc<=lenb)
                          	{
                          		c[lenc]+=a[lenc]+b[lenc];
                          		if(c[lenc]>9)
                          		{
                          			c[lenc]-=10;
                          			c[lenc+1]++; 
                          		}
                          		lenc++;
                          	} 
                          	if(c[lenc]==0)
                          	{
                          		lenc--;
                          	}
                          	for(int i=lenc;i>=1;i--)
                          	{
                          		cout << c[i];
                          	}
                          	return 0;
                          }
                          
                          • -1
                            @ 2026-3-29 19:04:19

                            #include <bits/stdc++.h> using namespace std; int main(){ int a,b,s; cin>>a>>b; s=a+b; cout<<s; return 0; }

                            • -1
                              @ 2024-7-26 10:58:29

                              A+B Problem题解

                              新用户强烈建议阅读此帖

                              首先我们要理清思路

                              1.需要用到什么样的头文件?

                              2.用什么样的数据范围?

                              3.思路是什么?

                              首先题目中的数据范围是1a,b≤10^6, 而int 的范围是-2147483648-2147483647 正合题意,所以数据类型可以用int

                              话不多说,直接上代码

                              #include<iostream>//导入头文件,iostream里面是标准输入输出流(我说的什么?) 
                              using namespace std;//使用标准命名空间 
                              int main(){//主函数,程序的入口 
                              	int a,b;//创建a,b两个整型变量 
                              	cin>>a>>b;//输入 a , b 两个变量 
                              	cout<<a+b; //输出a+b的内容 
                              	return 0; 
                              }
                              

                              本蒟蒻发的第一篇题解,请多多支持喵~~

                              • -2
                                @ 2026-3-16 21:13:55

                                #include <bits/stdc++.h> using namespace std;

                                int main(){ int a,b; cin>>a>>b; cout<<a+b; return 0; }

                                • -2
                                  @ 2025-12-30 22:23:26
                                  #include<iostream>
                                  using namespace std;
                                  int a,b;
                                  int main ( ) {
                                      cin>>a>>b;
                                      cout<<a+b;
                                  }
                                  
                                  • -2
                                    @ 2025-5-24 15:28:36
                                    #include<bits/stdc++.h>//万能头文件
                                    using namespace std;
                                    
                                    int main(){
                                    //定义int类型变量a,b
                                    int a;
                                    int b;
                                    //输入变量a,b
                                    scanf("%d",&a);
                                    scanf("%d",&b);
                                    //输出a,b
                                    printf(" %d\n", a + b);
                                    //exit(0); 或 return 0; 结束程序
                                    return 0;
                                    }
                                    
                                    
                                    • -2
                                      @ 2025-5-11 9:37:50

                                      权威

                                      #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;
                                      }
                                      
                                      
                                      
                                      
                                      • -3
                                        @ 2026-1-31 8:59:47

                                        1行。

                                        int main() { int a,b; __builtin_scanf("%d%d",&a,&b); __builtin_prinf("%d",a+b);
                                        
                                        • -3
                                          @ 2025-12-28 18:10:49

                                          #include<bits/stdc++.h> using namespace std; const int N=1e3+10; int a,b; int main() { cin >> a >> b; cout << a+b; return 0; }

                                          信息

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