145 条题解

  • -1
    @ 2024-4-21 10:05:30

    A+B问题居然没有高精度题解,发一篇吧!

    #include <bits/stdc++.h> using namespace std; const int maxn=250; char sa[maxn],sb[maxn];//定义两个字符串 int a[maxn],b[maxn],c[maxn];//a,b位数字,c进位 int main() { scanf ("%d",sa); scanf ("%d",sb); memset (c,0,sizeof(c));//初始化赋值为0 int la=strlen (sa);//取字符串长度 int lb=strlen (sb); for (int i=0;i<la;i++) a[la-i-1]=sa[i]-'0'; for (int i=0;i<lb;i++) b[lb-i-1]=sb[i]-'0';//将两个字符串类型的数转换成整数 int lc=la>lb?la:lb;//三目运算符,取两个数字中数位最长的数字的数位 for (int i=0;i<lc;i++) { c[i] += a[i]+b[i];//加法运算 if (c[i]>=10) { c[i+1]=a[i]/10; c[i]=c[i]%10;//进位 } } if (c[lc]>0) lc++; int cnt=lc-1; while (c[cnt]==0) cnt--; for (int i=cnt;i>=0;i--) printf ("%d",c[i]); return 0; }

    • -1
      @ 2024-4-14 8:31:48

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

      • -1
        @ 2024-4-14 8:31:46

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

        • -1
          @ 2024-4-6 11:58:55

          经典的 a+ba+b

          • -1
            @ 2024-4-5 20:01:38
            #include
            using namespace std;
            
            struct Node
            {
            int data;
            Node *prev;
            Node *next;
            Node(int val) : data(val), prev(nullptr), next(nullptr) {}
            };
            
            Node *createList(int num)
            {
            Node *head = nullptr;
            Node *tail = nullptr;
            while (num > 0)
            {
            int digit = num % 10;
            Node *newNode = new Node(digit);
            if (head == nullptr)
            {
            head = newNode;
            tail = newNode;
            }
            else
            {
            newNode->next = head;
            head->prev = newNode;
            head = newNode;
            }
            num /= 10;
            }
            return head;
            }
            
            Node *addTwoNumbers(Node *num1, Node *num2)
            {
            Node *result = nullptr;
            Node *current = nullptr;
            int carry = 0;
            

            while (num1 != nullptr || num2 != nullptr || carry != 0) { int sum = carry;

            if (num1 != nullptr)
            {
                sum += num1->data;
                num1 = num1->next;
            }
            
            if (num2 != nullptr)
            {
                sum += num2->data;
                num2 = num2->next;
            }
            
            carry = sum / 10;
            sum %= 10;
            
            Node *newNode = new Node(sum);
            
            if (result == nullptr)
            {
                result = newNode;
                current = newNode;
            }
            else
            {
                current->prev = newNode;
                newNode->next = current;
                current = newNode;
            }
            

            }

            return result;

            }
            
            void printList(Node *head)
            {
            if (head == nullptr)
            {
            cout << "Empty list" << endl;
            return;
            }
            

            while (head != nullptr) { cout << head->data; head = head->next; } cout << endl;

            }
            
            void deleteList(Node *head)
            {
            while (head != nullptr)
            {
            Node *temp = head;
            head = head->next;
            delete temp;
            }
            }
            
            int main()
            {
            int num1 = 12345;
            int num2 = 6789;
            

            Node *list1 = createList(num1); Node *list2 = createList(num2);

            cout << "Number 1: "; printList(list1);

            cout << "Number 2: "; printList(list2);

            Node *sumList = addTwoNumbers(list1, list2);

            cout << "Sum: "; printList(sumList);

            deleteList(list1); deleteList(list2); deleteList(sumList);

            return 0;

            }
            
            
            • -1
              @ 2024-3-31 15:19:44
              #include <stdio.h>  #头文件  
              int main(){  #主函数
                  int a, b;  #申请int类型变量a,b
                  scanf("%d%d", &a, &b);#输入
                  printf("%d\n", a+b);#输出
                  return 0;#完美结束
              }
              
              • -1
                @ 2023-12-26 9:30:44

                这是全站最简单的题,也是所有萌新都会做到的题。

                #include<bits/stdc++.h>
                using namespace std;
                int main()
                {
                int a,b;
                cin>>a>>b;
                cout<<a+b;
                return 0;
                }
                
                • -1
                  @ 2023-12-23 11:24:00
                  #include<iostream>
                  using namespace std; 
                  int main()
                  {
                      int a,b;
                      cin>a>b;
                      cout<a+b;
                      return 0;
                  }
                  
                  • -1
                    @ 2023-12-7 0:26:43
                    line = list(map(int,input().split()))
                    print(line[0]+line[1])
                    
                    • -1
                      @ 2023-9-16 12:19:29
                      #include <bits/stdc++.h>
                      
                      using namespace std;
                      
                      int main(){
                          int a;
                          int b;
                          cin>>a>>b;
                          printf("%d",a+b);
                          return 0;
                      
                      }
                      
                      • -1
                        @ 2023-9-15 20:33:08

                        何不试一试这种C++代码呢?

                        #include <iostream>
                        #include <string>
                        
                        // 定义 A+B 的函数
                        std::string add(std::string num1, std::string num2) {
                            // 将两个数字字符串转换为数字数组
                            int len1 = num1.length();
                            int len2 = num2.length();
                            int maxLen = std::max(len1, len2);
                            int* arr1 = new int[maxLen];
                            int* arr2 = new int[maxLen];
                            for (int i = 0; i < maxLen; i++) {
                                if (i < len1) {
                                    arr1[i] = num1[len1 - i - 1] - '0';
                                } else {
                                    arr1[i] = 0;
                                }
                                if (i < len2) {
                                    arr2[i] = num2[len2 - i - 1] - '0';
                                } else {
                                    arr2[i] = 0;
                                }
                            }
                        
                            // 进行加法运算
                            int carry = 0;
                            std::string result = "";
                            for (int i = 0; i < maxLen; i++) {
                                int sum = arr1[i] + arr2[i] + carry;
                                carry = sum / 10;
                                result = std::to_string(sum % 10) + result;
                            }
                            if (carry > 0) {
                                result = std::to_string(carry) + result;
                            }
                        
                            delete[] arr1;
                            delete[] arr2;
                        
                            return result;
                        }
                        
                        int main() {
                            // 读取输入的两个数字
                            std::string num1, num2;
                            std::cout << "请输入两个数字:" << std::endl;
                            std::cin >> num1 >> num2;
                        
                            // 计算并输出结果
                            std::string sum = add(num1, num2);
                            std::cout << "结果为:" << sum << std::endl;
                        
                            return 0;
                        }
                        

                        但愿这种代码不会出现TLE或者是MLE 这个代码使用了字符串来表示大数,通过将字符串转换为数字数组,然后进行逐位相加的方式来实现 A+B 的功能。由于使用了字符串和动态数组,代码量较大。但是在实际应用中,这种方式并不是最高效的解决方案。在实际情况下,我们可以使用更简洁和高效的算法来解决这个问题。


                        我们可以用更简洁的方法做这道题

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

                        上面的代码是进行变量a和b直接相加的代码吗,这种也许就是标准代码。

                        好了,这道题的题解到此为止,走过路过,不要错过,点点赞吧~~~么么哒😗🥰

                        • -1
                          @ 2023-9-5 17:08:14
                          #include<iostream> //头文件
                          using namespace std; //命名空间
                          int main(){ //主函数,程序从这里开始
                              int a,b; //定义变量
                              cin>>a>>b; //输入
                              cout<<a+b<<endl; //输出他们的和
                              return 0; //主函数需要返回0
                          }
                          
                          • -1
                            @ 2023-8-12 15:01:05

                            Python 压行技巧,详细讲一讲:

                            1. split 函数,可以将字符串按一定分隔符分割,放在一个 list 中。例如,s'abc.abcd',那么 s.split ('.') 就是 ['abc', 'abcd'],如果没有参数,默认为 ' '
                            2. map 函数,可以将一个序列依次进行某个操作的最终序列。例如,a[1, 1, 4, 5, 1, 4]func 函数定义如下:
                              def func (int x):
                                  return x + 1
                              
                              那么 map (func, a) 就是 [2, 2, 5, 6, 2, 5]
                            3. sum 函数,可以求一个序列的和。例如,按照上面的 a,那么 sum (a) 就是 16

                            最终代码(注释参考样例一,不含注释一行):

                             print(sum(map(int,input().split())))
                            #print(sum(map(int, '1 2' .split())))
                            #print(sum(map(int,   ['1', '2']  )))
                            #print(sum(         [1, 2]        )))
                            #print(             2               )
                            
                            • -1
                              @ 2023-6-10 19:25:23

                              本蒟蒻第一次发题解:

                              #include <bits/stdc++.h> //头文件
                              using namespace std;//命名空间
                              int a,b; //定义变量
                              int main() { //主函数,程序从这里开始 
                                  cin>>a>>b; //输入
                                  cout<<a+b<<endl; //输出他们的和
                                  return 0; //主函数需要返回0
                              }
                              
                              • -1
                                @ 2023-3-19 15:21:32
                                #include <bits/stdc++.h>
                                #define int long long
                                using namespace std;
                                signed main() {
                                    ios::sync_with_stdio(false);
                                    cin.tie(nullptr);
                                    int a, b; cin >> a >> b;
                                    cout << a + b << '\n';
                                    return 0;
                                }
                                
                                • -1
                                  @ 2023-3-3 18:49:59

                                  这题很简单,输入 aa 和 bb,然后输出他们的和即可。

                                  #include <stdio.h>
                                  
                                  int main()
                                  {
                                      int a,b;
                                      scanf("%d%d",&a,&b);
                                      printf("%d\n", a+b);
                                      return 0;
                                  }
                                  
                                  • -1
                                    @ 2022-12-29 10:55:08

                                    非常简单的一道题,代码:

                                    var a,b:longint;
                                    begin
                                        readln(a,b);
                                        write(a+b);
                                    end.
                                    

                                    注意pascal用integer会爆掉。

                                    • -1
                                      @ 2022-12-3 11:34:28
                                      #include<bits/stdc++.h>
                                      using namespace std;
                                      int main(){
                                           int a,b;
                                           scanf("%d%d",&a,&b);
                                           return !printf("%d",a+b);
                                      }
                                      
                                      • -1
                                        @ 2022-4-11 7:50:21
                                        #include<bits/stdc++.h>
                                        using namespace std;
                                        int main(){
                                          int a,b;
                                          cin>>a>>b;
                                          cout<<a+b;
                                          return 0;
                                        }
                                        
                                        • -1
                                          @ 2022-3-26 0:01:54
                                          //新手可看此贴
                                          #include<bits/stdc++.h>
                                          using namespace std;
                                          long long a,b;//定义变量a,b
                                          int main(){
                                              cin>>a>>b;//将a,b输入
                                              cout<<a+b;//将a,b的和输出
                                              return 0;//主函数返回值为0
                                          }
                                          

                                          信息

                                          ID
                                          56
                                          时间
                                          1000ms
                                          内存
                                          1024MiB
                                          难度
                                          1
                                          标签
                                          递交数
                                          9073
                                          已通过
                                          4043
                                          上传者