Java教程

牛客网各种输入输出总结

本文主要是介绍牛客网各种输入输出总结,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

参考:https://blog.csdn.net/inthesilence/article/details/107448234

1.while(cin>>str)

例题:HJ1 字符串最后一个单词的长度

 

 

#include<iostream>
using namespace std;

int main(){
    string word;
    int ans=0;
    while(cin>>word){
        ans=word.size();
    }
    cout<<ans;
    return 0;
}

读取一行,按空格分隔

 2.getline(cin,str);

读取一行,可能有空格分隔。

#include<iostream>
using namespace std;

int main(){
    string str;
    getline(cin,str);
    char ch;
    cin>>ch;
    int ans=0;
    for(int i=0;i<str.size();i++){
        if(tolower(str[i])==tolower(ch))
            ans++;
    }
    cout<<ans;
    return 0;
}

3.while(cin>>n) 有n控制多行读入

 

 

 用set排序去重。

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

int main(){
    vector<int> a;
    priority_queue<int,vector<int>> pq;
    int n;
    
    while(cin>>n){
        int k;
        set<int> st;
        for(int i=0;i<n;i++){
            cin>>k;
            st.insert(k);
        }
        for(auto& num:st)
            cout<<num<<"\n";
    }

    return 0;
}

试一下map:更改一下while循环:

    while(cin>>n){
        int k;
        map<int,int> mp;
        for(int i=0;i<n;i++){
            cin>>k;
            mp[k]++;
        }
        for(auto& num:mp)
            cout<<num.first<<"\n";
    }

 

这篇关于牛客网各种输入输出总结的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!