[백준] 1373번 2진수 8진수
2022. 9. 7. 22:32
solving/C, C++
소스코드 #include #include int main (){ char a[1000001]; scanf("%s", &a); int len = strlen(a); char array[333334]; int i, index = 0, cur = 0, temp = 0, b = 1, c=0; for(i=len-1; i>=0; i--){ temp = temp + (a[i] - '0')*b; b = b*2; cur++; if(cur==3){ array[c++] = temp+'0'; cur = 0; b = 1; temp = 0; } if (i == 0) array[c] = temp+'0'; } if (c != 0 && len%3 == 0) c--; for(i=c; i>=0; i--){ printf("%d", arra..
[백준] 1356번 유진수 (숫자 배열로 받기, 배열에서 index 이동시키기)
2022. 9. 5. 18:42
solving/C, C++
소스코드 #include int main (){ int a, i; scanf("%d", &a); int number[10]; int len = 0; int n = a; while (n!=0){ number[len] = n % 10; len++; n = n/10; } int ans, ans1, ans2; for (int temp = 1; temp
[백준] 1296번 팀 이름 정하기 (변수 설정, strcmp)
2022. 9. 4. 19:21
solving/C, C++
소스코드 #include #include int main(){ char name[21]; int a, i, j; scanf("%s", &name); scanf("%d", &a); int namelen = strlen(name); int nameL = 0, nameO = 0, nameV = 0, nameE = 0; for (i=0; i
[백준] 1236번 성 지키기 (이차원 배열)
2022. 9. 2. 17:35
solving/C, C++
소스코드 #include int main(){ int a, b, i, j; scanf("%d %d", &a, &b); char castle[a][b]; for (i=0; i
[백준] 1032번 명령 프롬프트
2022. 9. 1. 15:47
solving/C, C++
소스코드 #include #include int main (){ int N, i, j; scanf("%d", &N); char a[N][51]; for(i=0; i
[백준] 25177번 서강의 역사를 찾아서
2022. 9. 1. 15:17
solving/C, C++
#include int main (){ int N, M ,i; scanf("%d %d", &N, &M); int n[N+1]; int m[M+1]; for(i=0; i 각각 다른 if문사용
[백준] 2525번 오븐 시계
2022. 8. 31. 00:16
solving/C, C++
소스코드 #include #include int main (){ int a, b, c; int ans1, ans2; scanf("%d %d", &a, &b); scanf("%d", &c); ans1 = a+ (b+c)/60; ans2 = (b+c)%60; if (ans1 >= 24) { ans1 = ans1%24; } printf("%d %d", ans1, ans2); } 해설 ans1 = a+ (b+c)/60; ans2 = (b+c)%60; if (ans1 >= 24) { ans1 = ans1%24; } 구현 부분. ans1은 원래 시간값 a + 최신 분값 (b+c)를 60으로 나눈 몫 ans2는 최신 분값 (b+c) 를 60으로 나눈 나머지 ans1값이 24가 넘어가면, 24로 나눈 몫으로 바꿔줌
[백준] 1181번 단어 정렬 (O(nlogn) 정렬 알고리즘, strcmp)
2022. 8. 29. 23:25
solving/C, C++
개념 정렬 알고리즘 중, 시간 복잡도가 O(n^2) 인 알고리즘만 사용해왔는데, 이 문제에서는 이런 알고리즘을 사용할 경우 시간 초과가 뜬다. 이를 해결하기 위해서는 O(nlogn) 정렬 알고리즘을 사용해야 한다는 것을 알게 되었다. 시간 복잡도가 O(n^2) 인 알고리즘은 n개의 원소를 바로 옆에 있는 원소와 비교해야 하기 때문에 n(n-1), 즉 O(n^2) 가 된다. 그렇다면 바로 옆 원소에 비교하는 방법을 안쓰면 된다! O(nlogn) 정렬 알고리즘에 해당하는 분할 정복에 대해 알아보았다. 참고 - https://velog.io/@chappi/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-2%EC%9D%BC%EC%B0%A8-Onlogn-%EC%A0%95%EB%A0%AC-%EB%..