본문 바로가기
반응형

SWE/코테137

[성실코딩 21일차] SWEA #1249 보급로 *** 처음에 보자마자 진짜 쉽다 생각했으나 틀렸음 ㅠㅠㅠㅠㅠㅠㅠㅠㅠ 방법1. DP로 풀었다. DP[r][c] = min( 상, 좌 )+map[r][c] 이렇게 풀었는데 틀렸다.test case 5번까지 맞고 6번부터 틀리다.아마 r,c를 돌아돌아서 오는 경우를 고려하지않아서겠지?예를 들면, [4][0]를 오는 방법 중, [0][0]에서부터 우, 하, 하, 하, 하, 좌 이렇게 오는게 더 최소복구시간인데,지금 풀이법에서는 [0][0]에서부터 하, 하, 하, 하 이렇게 오는 방법만으로 채워주고 있으니까? 방법2. DFS로 풀었다.DFS로 상하좌우 타고 들어가면서 더 작은값으로 update해줬다.test case 8번까지 맞고 9번부터 시간초과난다. 방법1 코드 #include #includ.. 2018. 11. 14.
[성실코딩 21일차] SWEA #2819 격자판의 숫자 이어 붙이기 * DFS로 모든 경우의 수 다 확인하는 방법으로 풀었는데 시간 초과 나왔다. 문제풀이를 DP로 수정해보려했는데 모르겠어서 다른 사람코드 보는데 똑같은 DFS방법인데 시간초과가 안난다!!!!! 시간 단축할 수 있는 방법 1. 이미 생성된 적 있는 숫자인지 확인(중복숫자 확인) -> 함수사용하지않고, 생성가능한 숫자 크기만큼 배열할당해서 1로 표시 2. 일곱자리숫자 만들기 -> 함수사용하지않고, dfs재귀로 부를때마다 숫자를 바로바로 생성해줌. *10 test case마다 재사용하는 변수는 초기화잊지말기! #include #include #include #include using namespace std; int dr[4] = { 0,0,1,-1 }; // 동서남북 int dc[4] = { 1,-1,0,0 }.. 2018. 11. 14.
[성실코딩 21일차] SWEA #5432 쇠막대기 자르기 삼성 SW Expert Academy를 처음 시도해봤다. 학습 추천을 위한 레벨 테스트 진행했는데 D4~D5 레벨을 추천받았다. D4 레벨에 몇일전 백준에서 풀었던 것과 동일한 문제가 있길래 다시 풀었다. 실수하지 말고 꼼꼼히 보기 #include #include #include using namespace std; int main() { int tc; cin >> tc; for (int i = 1; i > str; stack s; int result = 0; for (int i = 0; i < str.length(); i++) { switch (str[i]) { case '(': s.push(str[i]); break; case ')': if (str[i-1]=='(') { // 레이저 //레이저 없애.. 2018. 11. 14.
[성실코딩 20일차] 백준 #1922 네트워크 연결 / 그래프 오랜만에 푸는 그래프 문제!! 너무 오랜만이라서 데이터구조 수업 생각이 새록새록 났다 어렵지는 않지만 실행시간이 오래걸리는 것 같다 사용한 연결 선의 비용을 INF무한으로 바꿔주는 대신, 따로 저장하고 있는게 더 빠를까욤,,,?!! 아니면 모든 노드에 방문했는지 함수로 계속 확인해주는게아니라, 방문한 노드 갯수들 세고 있는게 더 빠를까욤,,?!!? #include using namespace std; #define INF 987654321 int n; // 컴퓨터의 수 n; //컴퓨터의 수 cin >> m; // 초기화 for (int i = 1; i a >> b >> c; graph[a][b] = c; graph[b][a] = c; } // 연산 int cost = 0; // 전체 합 최소비용 pair.. 2018. 11. 12.
반응형