11 条题解

  • 11
    @ 2023-8-10 14:46:49

    题目描述

    班主任拿到了一份名单,请为他统计班上男同学和女同学的人数和人员名单,人员名单需要按照学号大小排序。


    这题很简单,创建2个vector:boy和girl,输入时判断性别,a执行boy.push_back(x)else执行girl.push_back(x) 输出四行分别使用size,boy[i],size,girl[i]即可


    代码如下:

    #include<bits/stdc++.h>
    using namespace std;
    vector<int> boy,girl;
    int n,x;
    char xinbie;
    int main(){
        cin>>n;
        for(int i=1;i<=n;i++){
            cin>>x>>xinbie;
            if(xinbie=='a')boy.push_back(x);
            else girl.push_back(x);
        }sort(boy.begin(),boy.end());
        sort(girl.begin(),girl.end());
        cout<<boy.size()<<endl;
        for(long unsigned int i=0;i<boy.size();i++)cout<<boy[i]<<" ";
        cout<<endl<<girl.size()<<endl;
        for(long unsigned int i=0;i<girl.size();i++)cout<<girl[i]<<" ";
        return 0;
    }
    

    别问我为什么要用long unsigned int因为不用他的报错信息太烦了。

    • @ 2023-12-9 11:27:03

      说实话你可以用c++11

    • @ 2024-6-13 12:55:41

      为什么要用long unsigned int

  • 6
    @ 2023-11-5 11:30:40

    vector版:

    #include<bits/stdc++.h>
    using namespace std;
    vector<int>boy;
    vector<int>girl;
    int n;
    int main(){
    	ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
    	cin>>n;
    	for(int i=1;i<=n;i++){
    		int x;char c;
    		cin>>x>>c;
    		if(c=='a'){
    			boy.push_back(x);
    		}
    		if(c=='b'){
    			girl.push_back(x);
    		}
    	}
    	cout<<boy.size()<<"\n";
    	sort(boy.begin(),boy.end());
    	for(int i=0;i<boy.size();i++){
    		cout<<boy[i]<<" ";
    	}
    	cout<<"\n"<<girl.size()<<"\n";
    	sort(girl.begin(),girl.end());
    	for(int i=0;i<girl.size();i++){
    		cout<<girl[i]<<" ";
    	}
    	cout<<"\n";
    	return 0;
    }
    
    • 4
      @ 2024-6-1 10:40:05

      vector

      #include <bits/stdc++.h>
      #include <vector>
      using namespace std;
      vector<int> b,g;
      int main(){
          int n,x; char c;
          cin>>n;
          for(int i=0;i<n;i++){
              cin>>x>>c;
              if(c=='a')b.push_back(x);
              else g.push_back(x);
          }
          sort(b.begin(),b.end()),sort(g.begin(),g.end());
          cout<<b.size()<<'\n';
          for(int i:b)cout<<i<<' ';
          cout<<'\n'<<g.size()<<'\n';
          for(int i:g)cout<<i<<' ';
          return 0;}
      
      • 3
        @ 2024-3-9 19:16:27
        #include <bits/stdc++.h>
        using namespace std;
        int n,x;
        char y;
        vector<int>va,vb;
        int main(){
            cin>>n;
            for (int i=1;i<=n;i++){
            	cin>>x>>y;
            	if (y=='a')va.push_back(x);
            	else vb.push_back(x);
        	}
        	sort(va.begin(),va.end());
        	sort(vb.begin(),vb.end());
        	cout<<va.size()<<endl;
        	for (const auto&it:va)cout<<it<<" ";
        	cout<<endl<<vb.size()<<endl;
        	for (const auto&it:vb)cout<<it<<" ";
            return 0;
        }
        
        • 3
          @ 2023-9-5 19:46:40

          yasuo👀️

          #include <iostream>
          #include <algorithm>
          struct stu{int id;std::string x;}stud[10005];
          int yasuo(stu a,stu b){
              if(a.x!=b.x)return a.x<b.x; else return a.id<b.id;}
          int main(){
              int q,male=0,female=0; std::cin>>q;
              for(int i=0;i<q;i++){
                  std::cin>>stud[i].id>>stud[i].x; 
                  stud[i].x=="a"?male++:female++;}
              std::sort(stud,stud+q,yasuo); std::cout<<male<<"\n";
              for(int i=0;i<male;i++)std::cout<<stud[i].id<<" ";
              std::cout<<"\n"<<female<<"\n";
              for(int i=male;i<male+female;i++)std::cout<<stud[i].id<<" ";
              return 0;}
          
          • 3
            @ 2023-7-24 15:43:26
            #include <bits/stdc++.h>
            using namespace std;
            vector <int>q,p;
            int main()
            {
            int n;
            cin>>n;
            for(int i=1;i<=n;i++)
            {
                int b;
                char d;
                cin>>b>>d;
                if(d=='a') q.push_back(b);
                else p.push_back(b);
            }
            sort(p.begin(),p.end());
            sort(q.begin(),q.end());
            int ps=p.size();
            int qs=q.size();
            cout<<qs<<endl;
            for(int i=0;i<qs;i++) cout<<q[i]<<" ";
            cout<<endl;
            cout<<ps<<endl;
            for(int i=0;i<ps;i++) cout<<p[i]<<" ";
            return 0;
            

            //xiao he ❤️ tao

          • 3
            @ 2023-7-23 19:23:48
            #include <bits/stdc++.h>
            
            using namespace std;
            
            vector <int> f, m;
            
            int main() {
                int n;
                cin >> n;
                for (int i = 0; i < n; i++) {
                    int x;
                    char y;
                    cin >> x >> y;
                    if (y == 'a')
                        m.push_back(x);
                    else
                        f.push_back(x);
                }
                sort(m.begin(), m.end());
                sort(f.begin(), f.end());
                cout << m.size() << endl;
                for (int i = 0; i < m.size(); i++)
                    cout << m[i] << " ";
                cout << endl;
                cout << f.size() << endl;
                for (int i = 0; i < f.size(); i++)
                    cout << f[i] << " ";
                return 0;
            }
            
            
            • 2
              @ 2024-4-5 14:51:50

              过辣!

              chao详细版:

              #include <iostream>
              #include <algorithm>
              #include <cmath>
              #include <vector>
              using namespace std;
              vector<int> boys;
              vector<int> girls;
              int n,id;
              char sex;
              int main()
              {
                  boys.push_back(-1);
                  girls.push_back(-1);
                  cin>>n;
                  for (int i=1;i<=n;i++)
                  {
                      cin>>id>>sex;
                      if (sex=='a')
                      {
                          boys.push_back(id);
                      }
                      else
                      {
                          girls.push_back(id);
                      }
                  }
                  sort(boys.begin(),boys.end());
                  sort(girls.begin(),girls.end());
                  cout<<boys.size()-1<<"\n";
                  for (int i=1;i<=int(boys.size()-1);i++)
                  {//int()强转,编译提示给我坐下!
                      cout<<boys[i]<<" ";
                  }
                  cout<<"\n";
                  cout<<girls.size()-1<<"\n";
                  for (int i=1;i<=int(girls.size()-1);i++)
                  {//int()强转,编译提示给我坐下!
                      cout<<girls[i]<<" ";
                  }
                  return 0;
              }
              
              • -2
                @ 2023-8-12 11:10:48
                vector<int> b,g;
                    int n,xh;
                    char gender;
                    sort(b.begin(),b.end());
                    sort(g.begin(),g.end());
                    cout << b.size() << endl;
                    for (int i = 0;i < b.size();i ++) cout << b[i] << " ";
                    cout << endl << g.size() << endl;
                    for (int i = 0;i < g.size();i ++) cout << g[i] << " ";
                

                核心代码

                • -7
                  @ 2023-7-6 16:19:16
                  题目大意
                           存在n个学生,要把这n个学生按照性别分类。

                  完整思路
                          可以建立两个vector,分别存储男生和女生,每次输入当前学生学号和性别时,按照性别分别加入对应的vector中。

                  题解
                  
                  vector<int> man, women;
                  for (int i = 1; i <= n; i++)
                  {
                      int x;
                      char y;
                      cin >> x >> y;
                      if (y == 'a')
                          man.push_back(x);
                      else
                          women.push_back(x);
                  }
                  
                  
                  • -11
                    @ 2023-8-14 19:12:37
                    #include<bits/stdc++.h>
                    using namespace std;
                    vector<int> boy,girl;
                    int n,x;
                    char xinbie;
                    int main(){
                        cin>>n;
                        for(int i=1;i<=n;i++){
                            cin>>x>>xinbie;
                            if(xinbie=='a')boy.push_back(x);
                            else girl.push_back(x);
                        }sort(boy.begin(),boy.end());
                        sort(girl.begin(),girl.end());
                        cout<<boy.size()<<endl;
                        for(long unsigned int i=0;i<boy.size();i++)cout<<boy[i]<<" ";
                        cout<<endl<<girl.size()<<endl;
                        for(long unsigned int i=0;i<girl.size();i++)cout<<girl[i]<<" ";
                        return 0;
                    }
                    
                    
                  • 1

                  信息

                  ID
                  251
                  时间
                  1000ms
                  内存
                  256MiB
                  难度
                  3
                  标签
                  (无)
                  递交数
                  840
                  已通过
                  484
                  上传者