#include <iostream>
using namespace std;
int main(int argc, const char * argv[]) {
int num;
cin >> num;
for (int i = 1; i < 10; i++) {
cout << num << " * " << i << " = " <<num * i << "\n";
}
return 0;
}
#include <iostream>
using namespace std;
int main(int argc, const char * argv[]) {
int n;
cin >> n;
for (int i = 1; i <= n; i++) {
cout << i << "\n";
}
return 0;
}
N 찍기 문제를 풀면서 흥미로운 점을 발견했다. 반복문을 통해 결과를 출력할 때, 줄바꿈을 위해 처음에는 std::endl
을 사용했는데 시간초과 오류가 떠 이스케이프 시퀀스인 \n
으로 바꿔 채점을 돌리니 제대로 채점되었다. std::endl의 경우는 실행될 때마다 시스템 내 버퍼를 비우는 작업을 추가로 하게 돼 실행 시간이 느려질 수 있어 \n을 사용해야 시간을 절약할 수 있다.
#include <iostream>
using namespace std;
int main(int argc, const char * argv[]) {
int n;
cin >> n;
for (int i = n; i > 0; i--) {
cout << i << "\n";
}
return 0;
}
#include <iostream>
using namespace std;
int main(int argc, const char * argv[]) {
int year;
cin >> year;
if (((year % 4 == 0) && (year % 100 != 0)) || year % 400 == 0) {
cout << 1 << endl;
} else {
cout << 0 << endl;
}
return 0;
}
#include <iostream>
using namespace std;
int main(int argc, const char * argv[]) {
int hour;
int minute;
cin >> hour >> minute;
if (minute < 45) {
if (hour == 0) {
hour = 23;
} else {
hour = hour - 1;
}
minute = 15 + minute;
} else {
minute = minute - 45;
}
cout << hour << " " << minute << endl;
return 0;
}
#include <iostream>
using namespace std;
int main(int argc, const char * argv[]) {
int temp[3];
int num1, num2;
cin >> num1 >> num2;
int reNum1, reNum2;
int d = 10;
for (int i = 0; i < 3; i ++) {
temp[i] = num1 % d / (d / 10);
d = d * 10;
}
reNum1 = temp[0] * 100 + temp[1] * 10 + temp[2];
d = 10;
for (int i = 0; i < 3; i ++) {
temp[i] = num2 % d / (d / 10);
d = d * 10;
}
reNum2 = temp[0] * 100 + temp[1] * 10 + temp[2];
if (reNum1 > reNum2) {
cout << reNum1 << endl;
} else {
cout << reNum2 << endl;
}
return 0;
}
오늘은 며칠간 소홀히했던 백준 알고리즘 문제를 풀었다. 이제 CLASS1에서 새싹문제만 마저 풀면 CLASS1의 모든 문제를 풀게 된다. 난이도가 올라감에 따라 푸는 시간은 점점 더 길어지고 때로는 지루해지지만 그만큼 실력이 늘어나는 것도 체감돼 기분이 좋다. 앞으로도 끈기있게 열심히 풀어 나갈 것이다.