4 条题解

  • 6
    @ 2023-8-20 20:41:51

    emm...没啥好说的👀️ 上代码

    c++代码:

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        string a;
        getline(cin,a);//读取字符串
        for (int i = 0; i < a.length(); i++) if (a[i] == ' ') cout << a[i];//先把空格打印出来(是'0',不是"0")
        for (int i = 0; i < a.length(); i++) if (a[i] != ' ') cout << a[i];//再打印非空格
        return 0;
    }
    

    python代码:

    a = input()
    space = a.count(" ")//求出空格数量
    a = a.split()//切片
    print(space * " ",end = "")//也是先打印空格
    for i in a:
        print(i,end = "")//非空格
    

    都已AC,放心食用

    • 3
      @ 2023-8-13 10:30:14
      #include <bits/stdc++.h>
      using namespace std;
      string s;
      char a[105];
      int num,n;
      int main()
      {
          getline(cin,s);
          for(int i=0;i<s.length();i++)
          {
              if(s[i]==' ')
              {
                  num++;
                  continue;
              }
              a[n]+=s[i];
              n++;
          }
          for(int i=0;i<num;i++) cout<<" ";
          for(int i=0;i<n;i++) cout<<a[i];
          return 0;
      }
      
      • 2
        @ 2023-7-8 8:54:13
        #include <iostream>
        #include <string>
        using namespace std;
        int main()
        {
        	string a;
        	getline(cin, a);
        	for (int i = 0; i < a.size()-1; i++)
        	{
        		for (int j = 0; j < a.size() - i - 1; j++)
        		{
        			if (a[j] != ' ' && a[j + 1] == ' ')
        			{
        				int temp = a[j];
        				a[j] = a[j + 1];
        				a[j + 1] = temp;
        			}
        		}
        	}
        	for (int i = 0; i < a.size(); i++)
        	{
        		cout << a[i];
        	}
        	return 0;
        }
        
        • 0
          @ 2023-2-3 11:43:09

          我们可以先把空格去掉,然后再补回去,因此,我们要三个变量:初始字符串,去掉空格的字符串,把空格补回去的字符串

          code:

          #include <iostream> 
          #include <cstdio>
          #include <string>
          
          using namespace std;
          
          int main()
          {
              string s;
              getline(cin, s);
              int space = 0;
              string news = "";
              for (int i = 0; i < s.length(); i++)
              {
                  if (s[i] != ' ')
                      news += s[i];
                  else
                      space++;    
              }
              string spaces = "";
              for (int i = 0; i < space; i++)
                  spaces += " ";
              spaces += news;
              cout << spaces;
              return 0;
          }
          
          • 1

          【入门】字符串中的空格移位

          信息

          ID
          102
          时间
          1000ms
          内存
          32MiB
          难度
          1
          标签
          递交数
          102
          已通过
          74
          上传者