[BOJ] 1259. 팰린드롬수 - C++
·
Algorithm/BOJ [C++]
#include using namespace std;int main() { string s; bool isPalin = true; while (true) { isPalin = true; cin >> s; if (s == "0") break; for (int i = 0; i 오늘은 알바가서 간단한 문제풀이..쉬운문제라 적을 것도 없지만.. 블로그 뜸해지는 것 같아 뭐라도 끄적이려한다.# Tipsize는 반으로 나눠서 비교한다 데칼코마니처럼 반으로 접어서 같은 부분 보는 느낌문자열의 방향은 두가지로 만든다.s[i] 문자열은 처음부터 끝점으로s[s.length()-1-i] 끝부분부터 시작점을 향하는 방향으로 홀수일 때는 어차피 사이즈를 절반으로 나눠서 비교하니까 신경 안써도 된다. (가운데는 절..
[BOJ] 2267. 단지번호붙이기 - C++
·
Algorithm/BOJ [C++]
https://www.acmicpc.net/problem/2667 #include using namespace std;string board[26];int apartment[26][26];int dx[4] = { 0,1,0,-1 };int dy[4] = { 1,0,-1 ,0};int main() { int n; int count = 0; // 총 단지 수 int house = 0; // 단지내 집의 수 queue> Q; vector houseCount; cin >> n; for (int i = 0; i > board[i]; } for (int i = 0; i cur = Q.front(); Q.pop(); for (int dir = 0; dir = n || ny = n) continue; ..
[BOJ] 2583. 영역 구하기 - C++
·
Algorithm/BOJ [C++]
https://www.acmicpc.net/problem/2583 #include using namespace std;int board[102][102];int vis[102][102];int dx[4] = { 0,1,0,-1 };int dy[4] = { 1,0,-1,0 };int m, n, k;int main() { vector countScore; queue> Q; cin >> m >> n >> k; int area = 0; for (int i = 0; i > x1 >> y1 >> x2 >> y2; for (int j = y1; j cur = Q.front(); Q.pop(); for (int dir = 0; dir = m || ny = n) continue; ..
[BOJ] 7562. 나이트의 이동 - C++
·
Algorithm/BOJ [C++]
#include using namespace std;int dist[302][302];int dx[8] = {2,1,2,1,-1,-2,-1,-2};int dy[8] = {1,2,-1,-2,2,1,-2,-1};int main() { int t, x; // 테캐 수, 칸 수 int s1, s2; // 시작점 int g1, g2; // 도착점 queue> Q; cin >> t; for (int i = 0; i > x; cin >> s1 >> s2; cin >> g1 >> g2; for (int j = 0; j cur = Q.front(); Q.pop(); for (int dir = 0; dir =x || ny=x) continue; if ( dist[nx][ny]>-1) contin..
[BOJ] 1012. 유기농 배추 - C++
·
Algorithm/BOJ [C++]
#include using namespace std; // 유기농 배추int dx[4] = { 0,1,0,-1 };int dy[4] = { 1,0,-1,0 };int bat[52][52];int board[52][52]; // 배추가 있는지 없는지 int main() { int t, m, n, k; int x, y; cin >> t; queue> Q; for (int i = 0; i > m >> n >> k; int count = 0; for (int j = 0; j > x >> y; board[x][y] = 1; } for (int a = 0; a cur = Q.front(); Q.pop(); for (int dir = 0; dir m || nyn) continue; ..
[BOJ] 2577. 숫자의 개수 - C++
·
Algorithm/BOJ [C++]
#include using namespace std;int arr[10];int main() { int a, b, c; int total; cin >> a >> b >> c; total = a * b * c; while (total != 0) { arr[total % 10]++; total /= 10; } for (int i = 0; i 배열을 전역으로 두게 된다면 0으로 초기화 된다.total 이 0이 아닐때까지 반복문을 돌게하고 total 의 나머지 값을 구하여 배열 인덱스로 접근하여 개수를 올려줌. 그리고 total을 나눠주고 출력.
[BOJ] 2576. 홀수 - C++
·
Algorithm/BOJ [C++]
#include using namespace std;int main(){ int n; int min = 100,sum = 0; int check; for (int i = 0; i > n; if (n % 2 == 1) { // 1로 나누어 떨어짐 sum += n; // 홀수 합 if (n 1로 나누어떨어진다면 홀수의 합을 구하고min은 100보다 작다고 되어있으니 min을 100으로 설정min의 값보다 작으면 홀수중 최솟값을 구한다 sum(홀수 합)이 0이면 홀수가 없으니 return 0으로 main함수 종료
[BOJ] 10250. ACM 호텔 - C++
·
Algorithm/BOJ [C++]
#include using namespace std;int main() { int h, w, n; int t; cin >> t; for (int i = 0; i > h >> w >> n; int rest = n / h ; if (n % h == 0) { // 출입수와 층수가 나누어 떨어질 떄 if (rest 고려할게 좀 있다. xx1, xxx1호 방은 출입 수에서 층 수를 나누어 떨어지는 경우가 항상 점유한다.그러니 나누어떨어지지 않을때라면 2호방 부터 점유해야한다.
[BOJ] 2798. 블랙잭 - C++
·
Algorithm/BOJ [C++]
#include using namespace std;vector v;int main() { int n, m; cin >> n >> m; int input; int max = 0; int sum = 0; for (int i = 0; i > input; v.push_back(input); } // 세 수의 합 // 5 21 //5 6 7 8 9 for (int i = 0; i = max && sum
[BOJ] 3052. 나머지 - C++
·
Algorithm/BOJ [C++]
#include using namespace std;int numArr[42];int main() { int num; int total = 0; for (int i = 0; i > num; numArr[num % 42]++; } for (int i = 0; i =1) total++; } cout