
뭘 몰라서 틀렸나?문제 자체는 이해했지만 어떻게 해야 저 수를 구할수 있는지에 대한 발상은 하지 못했음.먼저 저 snowflake를 구성하는지에 대한 체크하는 함수를 만들고, 그 함수가 체크될때마다 사이즈를 올려서 최대 사이즈를 반환시켜야함. 뭘 실수해서 틀렸나?실수라고 할게 없는게 어떻게 체크할지에 대한 로직이 잡히지 않아서 아이디어 구상자체에 어려움을 겪었음. 앞으로 방지하려면?이런 도형류 구현문제 많이 풀어보기,구현 관련 문제는 배열로 인덱스를 체크해서 확인하는 방법이나 관찰을 통해서 패턴을 찾고 구현해야 하는데 그 부분을 많이 연습해 봐야겠음. #include #include #include using namespace std;bool is_valid_size(int x, int n, int m,..

뭘 생각못했나?먼저 학생들이 보는 방향이 두가지가 있었다는걸 생각했어야함,오른쪽 왼쪽 두가지라 최대의 경우는 2이고, 그거만큼 계속 ans에 더해주면서 최종 값을 반환한다는 생각을 못함. 왜 실수했나?실수는 없었지만 오른쪽 왼쪽 방향을 보고 그거만큼 더해준다는 발상이 어려웠음. 다음에도 이런일이 일어나지 않게하려면?1. 이런류의 문제 많이 풀어보기2. 문제 더 잘 읽기 #include #include using namespace std;int main(){ int cnt[1010] = {}; int ans = 0; cin.tie(0) -> sync_with_stdio(0); int n , x; cin >> n; for (int i = 0; i > x; cnt..

뭔 생각이 부족해서 못 풀었나가로(y) 세로(x) 좌표만 따로 벡터로 받아서 먼저 정렬한 뒤, 최대 가로 세로 길이를 구한 후 그 두개를 곱해서 답을 냈어야 한다.가로 세로 좌표를 따로 받을 생각을 하지 못했고 같이 받아버리고 해결하려는 잘못된 접근의 문제가 컸다. 뭘 실수해서 틀렸나생각 자체가 안났고 실수라고 할것 없이 아이디어가 안떠오른 문제이다. 그래서 뭘 기억하면 되나넓이 구하는 문제가 나왔고, 좌표가 나올땐 그걸 정렬한후 인접한 두 좌표끼리 빼서 최대 최소 가로세로 길이를 구할수가 있다. 그걸로 둘레나 넓이를 활용하면 된다. #include #include #include using namespace std;int main(){ cin.tie(0) -> sync_with_stdio(0);..

뭔 생각이 부족해서 못 풀었나struct 까지는 생각 잘했고 compare 함수 로직에서 조금 생각이 부족했음.그리고 동점일때의 등수 계산에 대해서 문제가 좀 있음. 1. compare 함수 로직 a 와 b를 비교해서 금,은, 동 모두 a>b 의 로직을 취함. 2. 동점인 상황에서 rank 조절만약 동점인 생황이면 rank 는 정하지 말고 아닐 경우면 rank 올려주고 인풋 기준 충족하면 최종 ans 업데이트하고 출력 뭘 실수해서 틀렸나compare 로직 작성, rank 계산에서 아이디어. 그래서 뭘 기억하면 되나구조체를 이용하는 문제를 많이 풀어보는 방법밖에 없다. #include #include #include using namespace std;int n, k;struct Country{ ..

뭔 생각이 부족해서 못 풀었나아이디어 while (y > 0) { res *= 10; res += y % 10; y /= 10; }이걸 생각 못했고res에서 자릿수를 왼쪽으로 한자리씩 올려주고 (계속 숫자 들어갈 자리를 만들어줌)계속 res에 y의 나머지를 더해주면서y는 오른쪽으로 한자리씩 내려준다 (1234 -> 123) 뭘 실수해서 틀렸나위의 아이디어를 생각 못함. 아이디어성 문제. 그래서 뭘 기억하면 되나소수판별과 마찬가지로 모듈로 %를 이용한 연산에 강해져야함. 모듈로 관련 문제를 많이 풀어봐야 할듯.

뭔 생각이 부족해서 못 풀었나check 배열을 지정해서 알파벳을 체크해야 한다는거 까지는 알았는데 이전 캐릭터의 활용을 생각하지 못한것같다. 뭘 실수해서 틀렸나실수는 아니고 아이디어가 문제였다. 그래서 뭘 기억하면 되나prev = s[0] 기억하고 문제마다 방법 생각해서 활용하는 것을 길러야함. #include #include #include using namespace std;bool groupcheck(string s){ vector checked(26, false); char prev = s[0]; checked[prev - 'a'] = true; for (int i = 1; i sync_with_stdio(0); int N; cin >> N; int coun..

뭔 생각이 부족해서 못 풀었나기본적인 구현아이디어는 모두 생각해냈다. 뭘 실수해서 틀렸나하지만 인덱스를 지정된 크로아티아 알파벳만큼 옮겨줄때 size - 1 인거를 그때에는 헷갈림 그래서 뭘 기억하면 되나위에 말한 것들. #include #include using namespace std;int main(){ cin.tie(0) -> sync_with_stdio(0); vector arr = {"c=", "c-", "dz=", "d-" , "lj", "nj", "s=", "z="}; string s; cin >> s; int cnt = 0; for (int i = 0; i

뭔 생각이 부족해서 못 풀었나일단 링별로 이름을 추가한다는 생각을 못함.그걸로 사람수가 2명이면 커플을 출력하면 된다는 생각을 했어야함. 뭘 실수해서 틀렸나페어에 대한 이해도 부족? 정도 실수는 없었음. 그래서 뭘 기억하면 되나페어로 2개의 구조체를 묶어 출력할수 있음.string, vector 으로 구현해서 각 반지마다 이름들을 적립하는 방법으로 가야한다는 접근법 기억. #include #include #include #include #include using namespace std;int main(){ cin.tie(0) -> sync_with_stdio(0); int n; cin >> n; unordered_map > ring_map; for (int i = 0; i >..

뭔 생각이 부족해서 못 풀었는가?소숫점을 한자리씩 뽑아내고 다음소숫점을 찾는다는 알고리즘 생각 못해냄나머지를 구해놓고 계속 10을 곱해주며digit은 나머지 / b함으로써 소숫점을 한자리씩 뽑고나머지 %= b 함으로써 뽑은 소숫점을 한자리씩 옮김 뭘 실수해서 틀린건가?실수는 없고, 모르고, 기억해야 한다. 그래서 뭘 기억하면 되나?소수 자체를 구하는 알고리즘, 그리고 소숫점 옮기는 방법. 코드#include using namespace std;int main(){ cin.tie(0) -> sync_with_stdio(0); int a, b, n; cin >> a >> b >> n; int remain = a % b; for (int i = 0; i
보호되어 있는 글입니다.
- Total
- Today
- Yesterday
- 15651
- 볼모으기
- 문자삼각형1
- 1304
- 세로읽기
- 15650
- 색종이(중)
- 연필공장
- 24954
- 문자사각형
- 백준
- 1338
- 단어집합2
- 정올
- 문자열찾기
- 숫자사각형3
- 2604
- 15654
- 3427
- 15652
- N과M
- 1438
- 1535
- 2857
- 트리 순회
- 8129
- 5545
- 몇번째조합
- 볼 모으기
- 색종이(초)
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |