목록분류 전체보기 (159)
할껀하고놀자
최대공약수 구해서 그 길이만큼 1을 출력해주면 되는 문제입니다. #include using namespace std; int gcd(long long a, long long b) { if (a%b == 0) { return b; } return gcd(b, a%b); } int main() { long long a, b; cin >> a >> b; long long result = gcd(a, b); for (int i = 0; i < result; i++) { cout
최소를 구할 때, 모두 떨어지는 최소의 시간을 구할 때이므로 것이니까 작게 떨어지는 것들의 최대를 구해야한다. #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(0); int tc; cin >> tc; for (int t = 0; t > l >> count; int maxTime = 0; int minTime = 0; for (int i = 0; i > n; int shortTime = min(n, l - n); int longTime = max(n, l - n); if (maxTi..
최대공약수 및 약수 구하는 방법을 학습하고 싶을 때 좋은 코드이다. #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(0); int n, m; cin >> n >> m; vector v; for (int i = 1; i
포인트 : map 자료구조를 pair를 이용하여 사용하기! #include #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(0); vector v; int num; while (scanf("%d", &num) != EOF) { v.push_back(num); } int sum = v.back(); v.pop_back(); sort(v.begin(), v.end()); map visited; int cnt = 0; for (int i = 0; i < v.size(); i++) { for (int j = i + 1; j < v.size(); j++) { //중복 제거 if ..
#include #include #include using namespace std; int dy[] = { -1,-1,-1,0,1,1,1,0 }; int dx[] = { -1,0,1,1,1,0,-1,-1 }; const int Max = 10; int N, M, K; int add[Max][Max]; int nutri[Max][Max]; vector namu[Max][Max]; int main() { cin >> N >> M >> K; for (int i = 0; i > add[i][j]; nutri[i][j] = 5; } } for (int i = 0; i > ..
#include #include #include using namespace std; bool flag; string S, T; int main() { ios_base::sync_with_stdio(false); cin.tie(0); cin >> S >> T; //T로부터 역순으로 진행할 때, S가 되는지 여부 파악 while (1) { if (S.length() == T.length()) { if (S == T) flag = true; break; } char c = T[T.length() - 1]; T.pop_back(); if (c == 'B') reverse(T.begin(), T.end()); } cout
#include #include using namespace std; const int MAX = 53; int cnt[MAX]; int result[MAX]; int main() { ios_base::sync_with_stdio(false); cin.tie(0); int N; cin >> N; for (int i = 0; i > num; cnt[num]++; } string buffer_flush, s; getline(cin, buffer_flush); getline(cin, s); for (int i = 0; i = 'A' && s..
단순히 입력받고 뒤집어 출력해도 정답으로 인정된다. O(n^3)의 시간복잡도를 가짐. #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(0); int T; cin >> T; for (int i = 0; i > H >> W; for (int j = 0; j > s; for (int k = s.length()-1; k >= 0; k--) { cout
#include #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(0); int N; cin >> N; vector v; for (int i = 0; i > num; v.push_back(make_pair((i + 1), num)); } int idx = 0; int copyN = N; for (int i = 0; i < copyN; i++) { cout = 0 ? idx : N + idx%N); idx %= N; } cout