728x90

🐣 알고리즘 삐약 141

19 삐약 : 백준 2447 [C++]

https://www.acmicpc.net/problem/2447 2447번: 별 찍기 - 10 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 www.acmicpc.net #include using namespace std; void star(int i, int j, int num) { if ((i / num) % 3 == 1 && (j / num) % 3 == 1) { cout num; for (int i = 0; i < num; i++) { for (int j = 0; j < num; j++) { star(i, j, num); } cout

18 삐약 : 백준 10870 [C++]

https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net #include using namespace std; int fibonachi(int n) { if (n == 0 ) return 0; if (n == 1) return 1; return fibonachi(n-2)+fibonachi(n-1); } int main() { int num; cin >> num; cout

16 삐약 : 백준 9020 [JAVA]

소수를 활용하는 문제이다아아아 이제 소수보면 에라토스테네스를 어떻게 적용해야 할지 머리를 열심히 굴리고 있다. 생각보다 디자인 하는 데 시간이 오래 걸리지 않았고 냅다 구현을 시작했다. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.ObjectInputStream.GetField; import java.io.OutputStreamWriter; import java.util.Scanner; public class Main { static boolean[] arr ; public static void get_..

15 삐약 : 백준 4948 [JAVA]

저번에 문제를 풀었던 기억에 있어서 버퍼를 쓰려고 해서 처음에는 버퍼로 접근 했다. 여러번 틀리고 런타임 에러가 나서 수정하다가 버퍼로 출력 할 때 정수형은 String으로 형변환 해서 출력해야 한 다는 것을 알게 되었고 마지막 bufferWriter 에서 write메소드 작성 할 때 String.valueOf(Integer) 이거 써서 출력문 완성하고 아 됐다. 이제 돌리면 accepted 되겠다!! 하고 돌렸는데!!!!!! 나름 코드 구현 잘 했다고 생각하고!!!! 실행했을 때 잘 돌아가서 아무런 의심 없이 제출을 해서 냅다 돌렸는데!!!!!!!! 진짜...뭐지? 왜때문이지? ㅋㅋㅋㅋㅋㅋㅋㅋㅋ 아직도 먼지인 나는 왜 그런지 이해를 못하기에 혹여 똑똑똑하고 친절하신 분이 계시다면 왜때문에 런타임에러인지..

14 삐약 : 백준 1929 [JAVA]

아까 방금 했던 에라토스테네스의 채를 활용한 문제를 풀어보려고 한다. 마치 처음 접하는 문제인 마냥 얘기를 해 보려고 하지만 이전에 C++으로 풀기 위해 접근 했던 문제이다. 오늘 자바로 꼭 풀어보도록 하쟈 히히 아주 EEEEEEEEEEEEEEEEEEEEEASY하게 문제를 해결해.땨 역시 나는 자바가 죠타.😊 언제 또 자바가 싫어질 지 모르니 오늘 열심히 좋아해 주도록 하게.땨 히히히 채점도 냅다 맞아버렸다!! 근데 나는 매번 백준 풀 때마다 궁금한게 다른 사람들도 나처럼 코드 길이가 길고 시간이 오래 걸렸을까? ㅇㅅㅇ 나는 856ms가 걸렸는데 300ms대의 분이 계셔서 슬쩍 구경갔다 왔다. 근데 BufferedWriter를 쓰셨.땨!!! 아무래도 Buffer가 빠르다는 얘기는 익히 들었었기에 나도 출..

[JAVA] 에라토스테네스의 체

아니 수업에서는 C++을 사용하긴 하는데 한국에서는 아직 JAVA를 많이 쓰고 있기에 자바랑 C++이랑 한 번씩 알고리즘을 풀어야 할 것 같아.... 엉엉 ㅠ 아니야 오히려 좋아 자바 라이브러리 함수도 다시 익혀갈 겸 어짜피 다 잊은거... 내가 노력해야지...그치 맞지...? 이전 포스팅에서 사용했던.에라토스테네스의 체를 JAVA로 구현 해 보도록 하게.땨. 사실 1학년 때부터 자바를 접해와서 그랬던건지 이전 포스트에서 써 봐서 그랬던건지 여튼 자바로 구현하는 게 훨씬 더 편했다. 기분탓이라면 뭥... 유감 *^-^* 나름 열심히 구현 하고 실행을 시켰는데 결과가 환상적이다. 아무리 봐도 테네스씨의 체는 구현을 잘 한 것 같은데 왜 그럴까 하고 냅다 디버깅을 해보니. 출력에서 문제가 있더라 망할 형변환..

13 삐약 : 백준 1929 [C++]

이놈의 소수는 언제 끝날런지싶지만 열심히 토도도독 굴려본다 나름 훗 나 잘해 후후훗 하고서 토도도독 쳐 봤는데 어찌된 영문인지 한 큐에 바로 그냥 냅다 실행이 되드라. 그래서 제출을 해 봤는데 어머나 세상에 시간 초과 됐다. 그래서 냅다 구글에 요거 시간초과 쳐 보니까 이게 에라토스테네스의 채 라는 개념에 관련된 문제라고 하더라! 옛날에 동아리 교육할 때 얼핏 들었던 것 같은데 역시나 기억도 못하고 활용도 못하는 나의 명석한 두뇌란. 에라토스테네스의 체는 임의의 수 n 까지의 소수를 구하고자 할 때 2부터 n의 제곱근까지 돌며 모든 배수들을 소수에서 제외시키는 방식이다. 배열로 소수를 구하는 방법이다.

UVa / 00514 Rails [JAVA]

A에서 station으로 들어온 열차는 거꾸로 나가야 한다 == LIFO 구조의 Stack을 이용하여 해결한다! 입력은 line의 block 형태로 받아오는데 첫 줄에는 coach의 개수, 이후에는 coach의 배열을 입력한다. 입력을 완료했을 경우에는 마지막 줄에 0을 입력하여 한 블럭을 종료함을 표시한다. 실행을 완전히 종료하기 위해서는 0을 한 번 더 입력하여 종료한다. package chap2; import java.util.*; import java.io.*; public class Rails_UVa514 { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new Inp..

12 삐약 : 백준 11653 [C++]

안녕 삐약 오늘 대면수업을 하고 왔는데 3월 한 달은 비대면으로 진행하신다고 한다. 근데 왜 OT는 대면으로 하신거지 힝구. 여튼 짧은 오티로 다음 수업까지 우주공강이 생겨버린 개 강한 대학생은 다시 삐약거려 보도록 하겠다. 오늘 풀 문제는 소인수분해 문제이다. 근데 더 큰 문제는 내가 소인수분해를 잊어먹었다. ㅋㅋㅋㅋㅋㅋㅋㅋㅋ 대충 이케이케 해보고 혼자서 꼼지락 대면서 디자인을 해 보았다. if문으로 1이상의 수임을 걸러내고, 10번의 for문을 통해 소인수 분해를 진행한다. 17번의 for문을 사용하여 소수를 판단하고, 17번의 조건문을 사용하여 분해한다. 잘 돌아가긴 하는데 반복문이 너무 많이 쓰여서 시간이 잘 맞을지 걱정이 한가득이였지만, 음. 그럴 줄 알았지. 뭐때문일까 생각을 해봤는데 아무리 ..

728x90