mooon๐ŸŒ™
STUDY
mooon๐ŸŒ™
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (170)
    • ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ (147)
      • ๋ฐฑ์ค€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (53)
      • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] Lv1 (13)
      • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์ž…๋ฌธ (54)
      • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] SQL ๊ณ ๋“์  Kit (27)
    • BACK (4)
      • Spring (3)
      • PHP (0)
    • FRONT (5)
    • DevOps (8)
      • Jenkins (8)
    • GitHub๐ŸŒฑ (2)
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (1)
      • SQL (1)
    • Error ๐Ÿ’ฅ (0)
      • php (2)
    • ๐Ÿ˜‹ (1)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • โญ ๊นƒํ—ˆ๋ธŒ
  • ๐Ÿ’• ๋ฐฉ๋ช…๋ก
  • ๐Ÿ’ฅ ํƒœ๊ทธ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • ๋ฐฑ์ค€
  • Python
  • SQL
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
  • SQL ๊ณ ๋“์  Kit
  • DevOps
  • c++
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜
  • ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ
  • ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์ž…๋ฌธ

์ตœ๊ทผ ๊ธ€

250x250
hELLO ยท Designed By ์ •์ƒ์šฐ.
mooon๐ŸŒ™

STUDY

๋ฐฑ์ค€ 2178 _ ๋ฏธ๋กœ ํƒ์ƒ‰
์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ/๋ฐฑ์ค€ ์•Œ๊ณ ๋ฆฌ์ฆ˜

๋ฐฑ์ค€ 2178 _ ๋ฏธ๋กœ ํƒ์ƒ‰

2020. 11. 28. 14:51
728x90

www.acmicpc.net/problem/2178

 

2178๋ฒˆ: ๋ฏธ๋กœ ํƒ์ƒ‰

์ฒซ์งธ ์ค„์— ๋‘ ์ •์ˆ˜ N, M(2 ≤ N, M ≤ 100)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ N๊ฐœ์˜ ์ค„์—๋Š” M๊ฐœ์˜ ์ •์ˆ˜๋กœ ๋ฏธ๋กœ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ๊ฐ์˜ ์ˆ˜๋“ค์€ ๋ถ™์–ด์„œ ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง„๋‹ค.

www.acmicpc.net


โœจ ๋‚ด ์†Œ์Šค ์ฝ”๋“œ

#include<iostream>
#include <string>
#include<vector>
#include<queue>
using namespace std;

int N, M;
int MAP[101][101];
string temp;
int Route[4][2] = { {0,-1},{1,0},{0,1},{-1,0} };

void bfs() {
	queue<pair<int,int>> q;
	q.push(make_pair(0, 0));
	int nx, ny;
	pair<int, int> current;

	while (!q.empty()) {
		current = q.front();
		q.pop();
		for (int i = 0; i < 4; i++) {
			nx = current.first + Route[i][0];
			ny = current.second + Route[i][1];
			if (0 <= nx && nx < N && 0 <= ny && ny < M && MAP[nx][ny]==1) {
				q.push(make_pair(nx, ny));
				MAP[nx][ny] = MAP[current.first][current.second] + 1;
			}
		}
	}
}

int main(void) {
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	
	cin >> N >> M;
	for (int i = 0; i < N;i++) {
		cin >> temp;
		for (int j = 0; j < M; j++) {
			MAP[i][j] = temp[j]-'0';
		}
	}

	bfs();
	cout << MAP[N - 1][M - 1];
	return 0;
}

 

๐Ÿ™ ๋ฌธ์ œ ํ’€์ด

๋ฏธ๋กœ๋ฅผ ํƒ์ƒ‰ํ•˜๋Š” ๊ฒƒ์€ BFS๋ฅผ ์ด์šฉํ•˜์—ฌ ์–ด๋ ค์›€ ์—†์ด ํ’€์—ˆ์ง€๋งŒ

์ด๋™ํ•œ ์นธ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฐ์—์„œ ๊ณจ๋จธ๋ฆฌ๋ฅผ ์•“์•˜๋‹ค

๊ฒฐ๊ตญ DP๋ฅผ ์‚ด์ง ์„ž๋Š” ๊ฑธ๋กœ ํ•ด๊ฒฐํ•˜์˜€๋‹ค

 

์œ„์™€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ์ด๋™ํ•œ ์นธ ์ˆ˜๋ฅผ ๊ตฌํ•˜๊ฒŒ ๋œ๋‹ค

 

โญ ๋ฌธ์ œ ํ’€์ด ๊ฒฐ๊ณผ

728x90
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)
    '์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ/๋ฐฑ์ค€ ์•Œ๊ณ ๋ฆฌ์ฆ˜' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • ๋ฐฑ์ค€ 5546 _ ํŒŒ์Šคํƒ€
    • ๋ฐฑ์ค€ 1240 _ ๋…ธ๋“œ์‚ฌ์ด์˜ ๊ฑฐ๋ฆฌ
    • ๋ฐฑ์ค€ 11722 _ ๊ฐ€์žฅ ๊ธด ๊ฐ์†Œํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด
    • ๋ฐฑ์ค€ 10026 _ ์ ๋ก์ƒ‰์•ฝ
    mooon๐ŸŒ™
    mooon๐ŸŒ™
    ๊ฐœ๋ฐœ ๊ณต๋ถ€ ๊ธฐ๋ก

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”