문제
풀이
Hello World
#include<iostream>
using namespace std;
int main()
{
cout << "Hello World!";
}
사칙 연산
#include<iostream>
using namespace std;
int main()
{
int A, B;
cin >> A >> B;
cout << A + B << '\n' << A - B << '\n' << A * B << '\n' << A / B << '\n' << A % B;
}
곱셈
#include<iostream>
using namespace std;
int main()
{
int A, B;
cin >> A >> B;
cout << A * (B % 10)<<'\n';
cout << A * ((B / 10) % 10)<<'\n';
cout << A * (B / 100)<<'\n';
cout << A * B<<'\n';
}
윤년
#include<iostream>
using namespace std;
int main()
{
cin.tie(0); cout.tie(0);
ios::sync_with_stdio(0);
int year;
cin >> year;
if (!(year % 4) && (year % 100 || !(year % 400)))
{
cout << 1;
}
else
{
cout << 0;
}
}
X보다 작은 수
#include<iostream>
#include<algorithm>
using namespace std;
int A[10005];
int main()
{
cin.tie(0); cout.tie(0);
ios::sync_with_stdio(0);
int N, X;
cin >> N >> X;
for (int i = 0; i < N; i++)
{
cin >> A[i];
}
for (int i = 0; i < N; i++)
{
if (A[i] < X)
cout << A[i] << ' ';
}
}
OX퀴즈
#include<iostream>
#include<vector>
#include<string>
using namespace std;
vector<int>v;
int main()
{
int n;
int sum = 0;
int counting = 0;
string s;
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> s;
counting = 0;
sum = 0;
for (int j = 0; j < s.size(); j++)
{
if (s[j] == 'O')
{
counting++;
sum += counting;
}
else
{
counting = 0;
}
}
v.push_back(sum);
}
for (int nxt : v)
{
cout << nxt << '\n';
}
}
평균은 넘겠지
#include<iostream>
#include<vector>
using namespace std;
int C;
vector<double>result;
int arr[1005];
int main()
{
cin.tie(0); cout.tie(0);
ios::sync_with_stdio(0);
cin >> C;
for (int i = 0; i < C; i++)
{
double N;
double sum = 0;
double average = 0;
double counting = 0;
cin >> N;
for (int j = 0; j < N; j++)
{
double score;
cin >> score;
arr[j] = score;
sum += score;
}
average = sum / N;
for (int j = 0; j < N; j++)
{
if(arr[j]>average)
counting++;
}
result.push_back((counting / N) * 100.f);
}
for (float nxt : result)
{
cout << fixed;
cout.precision(3);
cout << nxt << '%' << '\n';
}
}
아스키 코드
#include<iostream>
using namespace std;
int main()
{
char c;
int num;
cin >> c;
num = c;
cout << num;
}
단어의 개수
#include<iostream>
#include<string>
using namespace std;
string s;
int main()
{
cin.tie(0); cout.tie(0);
ios::sync_with_stdio(0);
getline(cin, s);
bool word = false;
int counting = 0;
for (int i = 0; i < s.size(); i++)
{
if ((('a'<=s[i])&&(s[i]<='z'))||(('A'<=s[i])&&(s[i]<='Z'))&&!word)
{
word = true;
}
else if (!((('a' <= s[i]) && (s[i] <= 'z')) || (('A' <= s[i]) && (s[i] <= 'Z'))) &&word)
{
word = false;
counting++;
}
}
if (word)
{
counting++;
}
cout << counting;
}
달팽이는 올라가고 싶다
#include<iostream>
using namespace std;
int main()
{
cin.tie(0); cout.tie(0);
ios::sync_with_stdio(0);
int A, B, V,result;
cin >> A >> B >> V;
result = (V - A) / (A - B) + 1;
(V - A) % (A - B) <= A&&(V-A)%(A-B)>0 ? result += 1 : result;
cout << result;
}
소수 찾기
#include<iostream>
#include<cstring>
using namespace std;
bool prime[1005];
int num[105];
int main()
{
cin.tie(0); cout.tie(0);
ios::sync_with_stdio(0);
memset(prime, true, 1005);
int N;
int result=0;
cin >> N;
for (int i = 0; i < N; i++)
{
cin >> num[i];
}
prime[1] = false;
for (int i = 2; i*i <= 1000; i++)
{
if (prime[i])
{
for (int j = i * i; j <= 1000; j += i)
{
if (prime[j])
prime[j] = false;
}
}
}
for (int i = 0; i < N; i++)
{
if (prime[num[i]])
result++;
}
cout << result;
}
팩토리얼
#include<iostream>
using namespace std;
int recursion(int num)
{
if (num == 0)return 1;
else return num*recursion(num-1);
}
int main()
{
cin.tie(0); cout.tie(0);
ios::sync_with_stdio(0);
int N;
cin >> N;
cout << recursion(N);
}
하노이 탑
코드를 입력하세요
N-Queen
#include<iostream>
using namespace std;
bool vertical[15];
bool check1[30];
bool check2[30];
int counting;
int N;
void Nqueen(int seq)
{
if (seq == N)
{
counting++;
return;
}
for (int i = 0; i < N; i++)
{
if (vertical[i]||check1[seq-i+(N-1)]||check2[seq+i])continue;
vertical[i] = true;
check1[seq - i + (N - 1)] = true;
check2[seq + i] = true;
Nqueen(seq + 1);
vertical[i] = false;
check1[seq - i + (N - 1)] = false;
check2[seq + i] = false;
}
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
cin >> N;
Nqueen(0);
cout << counting;
}
수 정렬하기
#include<iostream>
#include<algorithm>
using namespace std;
int num[1005];
int main()
{
int N;
cin >> N;
for (int i = 0; i < N; i++)
cin >> num[i];
sort(num, num+N);
for (int i = 0; i < N; i++)
cout << num[i] << '\n';
}
수 정렬하기2
코드를 입력하세요
수 정렬하기3
코드를 입력하세요
단어 정렬
코드를 입력하세요
일곱 난쟁이
#include<iostream>
#include<algorithm>
#include<cstring>
#include<array>
using namespace std;
int height[9];
int num[9] = { 0,0,0,0,0,0,0,1,1 };
int man[7];
int main()
{
cin.tie(0); cout.tie(0);
ios::sync_with_stdio(0);
for (int i = 0; i < 9; i++)
{
cin >> height[i];
}
int result = 0;
do
{
int count = 0;
memset(man, 0, sizeof(int) * 7);
result = 0;
for (int i = 0; i < 9; i++)
{
if (num[i] == 0)
{
result += height[i];
man[count++] = height[i];
}
}
if (result == 100)
break;
}
while (next_permutation(num, num + 9));
sort(man, man + 7);
for (int nxt : man)
{
cout << nxt << '\n';
}
}
차이를 최대로
코드를 입력하세요