寝癖頭の解法

小学生の目線から、勉強中の覚え書きを投稿、更新していきます。

アルゴ式(beta版): C++による「入力を受け取る (beta) 30/30」練習問題の解答例

アルゴ式(beta版)の「入力を受け取る (beta) 30/30」練習問題からの出典です。
algo-method.com
アルゴ式とは...
>・プログラミングや情報科学をコツコツ学べる「教科書」
>・学んだ内容をゲーム感覚で大量に実践できる「練習問題」
>の2つで構成される、Web上で完結した学習コンテンツです。

まだ公開されてから2ヶ月ぐらいのサービスらしくて、僕も偶然に知りました。
えーっと、AOJ(AizuOnlineJudge)を見やすく、わかりやすくしたようなって、そんな感じです。

ってことで、とりあえず遊んでみました。

C++による「入力を受け取る (beta) 30/30」練習問題の解答例

僕が作成、提出したコードは、以下のとおりです。

・画面に値を表示する (標準出力)

・標準出力1-1
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準出力1-1
https://algo-method.com/tasks/69
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	cout<<"Hello Algo-method!"<<endl;
	return 0;
}

・標準出力1-2
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準出力1-2
https://algo-method.com/tasks/70
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	for(int i=1;i<=3;i++){
		cout<<i<<endl;
	}
	return 0;
}

・標準出力1-3
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準出力1-3
https://algo-method.com/tasks/71
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	cout<<27182%818<<endl;
	return 0;
}

・標準出力1-4
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準出力1-4
https://algo-method.com/tasks/72
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int ans=314*(159+265)-358;
	cout<<ans<<endl;
	return 0;
}

・標準出力1-5
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準出力1-5
https://algo-method.com/tasks/73
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int day=1;
	int hour=day*24;
	int minute=hour*60;
	int second=minute*60;
	cout<<second<<endl;
	return 0;
}
・値を受け取る (標準入力)

・標準入力1-1
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力1-1
https://algo-method.com/tasks/15
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int n;
	cin>>n;
	cout<<2*n<<endl;
}

・標準入力1-2
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力1-2
https://algo-method.com/tasks/16
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int n;
	cin>>n;
	cout<<n%5<<endl;
	return 0;
}

・標準入力1-3
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力1-3
https://algo-method.com/tasks/21
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	string s;
	cin>>s;
	for(int i=0;i<3;i++){
		cout<<s;
	}
	cout<<endl;
	return 0;
}

・標準入力1-4
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力1-4
https://algo-method.com/tasks/22
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	string s;
	cin>>s;
	cout<<s[2]<<endl;
	return 0;
}

・標準入力1-5
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力1-5
https://algo-method.com/tasks/23
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int x;
	cin>>x;
	cout<<24-x<<endl;
	return 0;
}
・複数の入力を受け取る

・標準入力2-1
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力2-1
https://algo-method.com/tasks/24
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int a,b;
	cin>>a>>b;
	cout<<a+b<<endl;
	return 0;
}

・標準入力2-2
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力2-2
https://algo-method.com/tasks/27
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int a,b;
	cin>>a>>b;
	cout<<max(a,b)<<endl;
	return 0;
}

・標準入力2-3
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力2-3
https://algo-method.com/tasks/30
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int a,b,c,d;
	cin>>a>>b;
	c=a%10;
	d=b%10;
	if(c>d){
		cout<<b<<endl;
	}else{
		cout<<a<<endl;
	}
	return 0;
}

・標準入力2-4
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力2-4
https://algo-method.com/tasks/28
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int a,b;
	cin>>a>>b;
	if(a%b==0){
		cout<<"Yes"<<endl;
	}else{
		cout<<"No"<<endl;
	}
	return 0;
}

・標準入力2-5
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力2-5
https://algo-method.com/tasks/25
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int a,b,c;
	cin>>a>>b>>c;
	int ans=(a+b+c)/3;
	cout<<ans<<endl;
	return 0;
}

・標準入力2-6
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力2-6
https://algo-method.com/tasks/29
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int a,b,c,d;
	cin>>a>>b>>c>>d;
	cout<<max(max(a,b),max(c,d))<<endl;
	return 0;
}

・標準入力2-7
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力2-7
https://algo-method.com/tasks/31
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	string s,t;
	cin>>s>>t;
	if(s==t){
		cout<<"Yes"<<endl;
	}else{
		cout<<"No"<<endl;
	}
	return 0;
}

・標準入力2-8
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力2-8
https://algo-method.com/tasks/26
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	string s,t,u;
	cin>>s>>t>>u;
	string ans=u+t+s;
	cout<<ans<<endl;
	return 0;
}

・標準入力2-9
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力2-9
https://algo-method.com/tasks/32
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	string s;
	int n;
	cin>>s>>n;
	cout<<s[n-1]<<endl;
	return 0;
}

・標準入力2-10
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力2-10
https://algo-method.com/tasks/33
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	string s;
	int n,m;
	cin>>s>>n>>m;
	swap(s[n-1],s[m-1]);
	cout<<s<<endl;
	return 0;
}
・たくさんの入力を受け取る

・標準入力3-1
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力3-1
https://algo-method.com/tasks/53
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int sum=0;
	int n;
	cin>>n;
	vector<int> a(n);
	for(int i=0;i<n;i++){
		cin>>a[i];
		sum+=a[i];
	}
	cout<<sum<<endl;
	return 0;
}

・標準入力3-2
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力3-2
https://algo-method.com/tasks/54
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
using ll=long long;
int main(void){
	ll mul=1;
	int n;
	cin>>n;
	vector<ll> a(n);
	for(int i=0;i<n;i++){
		cin>>a[i];
		mul*=a[i];
	}
	cout<<mul<<endl;
	return 0;
}

・標準入力3-3
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力3-3
https://algo-method.com/tasks/52
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int n;
	cin>>n;
	vector<string> a(n);
	for(int i=0;i<n;i++){
		cin>>a[i];
		reverse(a[i].begin(),a[i].end());
		cout<<a[i].at(0)<<endl;
	}
	return 0;
}

・標準入力3-4
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力3-4
https://algo-method.com/tasks/56
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int n;
	cin>>n;
	vector<int> a(n);
	for(int i=0;i<n;i++){
		cin>>a[i];
		if(a[i]%3==0){
			cout<<a[i]<<endl;
		}
	}
	return 0;
}

・標準入力3-5
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力3-5
https://algo-method.com/tasks/57
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int n;
	cin>>n;
	vector<int> a(n);
	for(int i=0;i<n;i++){
		cin>>a[i];
	}
	for(int i=n-1;i>=0;i--){
		cout<<a[i]<<endl;
	}
	return 0;
}

・標準入力3-6
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力3-6
https://algo-method.com/tasks/60
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int sum=0;
	int n;
	cin>>n;
	vector<int> a(n);
	for(int i=0;i<n;i++){
		cin>>a[i];
		sum+=a[i];
	}
	int ans=sum/n;
	cout<<ans<<endl;
	return 0;
}

・標準入力3-7
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力3-7
https://algo-method.com/tasks/61
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int ans=10000;
	int n;
	cin>>n;
	vector<int> a(n);
	for(int i=0;i<n;i++){
		cin>>a[i];
		ans=min(ans,a[i]);
	}
	cout<<ans<<endl;
	return 0;
}

・標準入力3-8
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力3-8
https://algo-method.com/tasks/59
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	int ans=0;
	int n;
	cin>>n;
	vector<string> s(n);
	for(int i=0;i<n;i++){
		cin>>s[i];
		int ss=s[i].size()-0;
		ans+=ss;
	}
	cout<<ans<<endl;
	return 0;
}

・標準入力3-9
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力3-9
https://algo-method.com/tasks/58
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include<bits/stdc++.h>
using namespace std;
int main(void){
	string ans="";
	int n;
	cin>>n;
	vector<string> s(n);
	for(int i=0;i<n;i++){
		cin>>s[i];
		ans+=(s[i].at(0));
	}
	cout<<ans<<endl;
	return 0;
}

・標準入力3-10
algo-method.com

/*
C++による「入力を受け取る (beta) 30/30」練習問題の解答例
標準入力3-10
https://algo-method.com/tasks/62
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
#include <bits/stdc++.h>
using namespace std;

int main() {
	cout << "Hello World!" << endl;
	return 0;
}

設問の出典は、情報科学をコツコツ積み立てて学習できるサービス「アルゴ式(beta版)」です。
algo-method.com