paizaラーニングのレベルアップ問題集「Bランクレベルアップメニュー」からの出典です。
paiza.jp
C++による「Bランクレベルアップメニュー」問題集 足すか掛けるかと、それらの提出コードの解答例です。
僕が作成、提出したコードは、以下のとおりです。
・STEP: 1 要素数の出力
/* C++による「Bランクレベルアップメニュー」問題集 足すか掛けるか STEP: 1 インクリメント https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; using ll=long long; int main(void){ ll n; cin>>n; cout<<n+1<<endl; return 0; }
・STEP: 2 文字列の出力
/* C++による「Bランクレベルアップメニュー」問題集 足すか掛けるか STEP: 2 文字列の出力 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ int n; cin>>n; cin.ignore(); vector<string> s(n); for(int i=0;i<n;i++){ getline(cin,s[i]); vector<string> t; stringstream ss{s[i]}; string u; while(getline(ss,u,' ')){ t.push_back(u); } for(int i=0;i<t.size();i++){ cout<<t[i]; if(i!=t.size()-1){ cout<<" "; }else{ cout<<endl; } } } return 0; }
・STEP: 3 文字列の分割
/* C++による「Bランクレベルアップメニュー」問題集 足すか掛けるか STEP: 3 文字列の分割 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ string s1,s2; cin>>s1>>s2; cout<<s1<<endl; cout<<s2<<endl; return 0; }
・STEP: 4 整数の足し算
/* C++による「Bランクレベルアップメニュー」問題集 足すか掛けるか STEP: 4 整数の足し算 https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; using ll=long long; int main(void){ ll a,b; cin>>a>>b; cout<<a+b<<endl; return 0; }
・FINAL問題: 足すか掛けるか
/* C++による「Bランクレベルアップメニュー」問題集 足すか掛けるか FINAL問題: 足すか掛けるか https://paiza.jp/works/mondai 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ int n; cin>>n; vector<int> a(n),b(n); for(int i=0;i<n;i++){ cin>>a[i]>>b[i]; } vector<int> c(n); for(int i=0;i<n;i++){ if(a[i]==b[i]){ c[i]=a[i]*b[i]; }else{ c[i]=a[i]+b[i]; } } int ans=0; for(int i=0;i<n;i++){ ans+=c[i]; } cout<<ans<<endl; return 0; }
paizaラーニングのレベルアップ問題集については、ユーザー同士で解答を教え合ったり、コードを公開したりするのは自由としています。
また授業や研修、教材などにも利用できるそうです。