Algorithm ๐ง๐ป๐ป/CodeUp11 1485 : 2์ฐจ์ ๋ฐฐ์ด ๋ฌํฝ์ด(2) ๋ฌธ์ [๊ธฐ์ด-๋ฐฐ์ด์ฐ์ต] 2์ฐจ์ ๋ฐฐ์ด ๋ฌํฝ์ด ์ฑ์ฐ๊ธฐ 4-2 ๋ค์๊ณผ ๊ฐ์ n*m ๋ฐฐ์ด ๊ตฌ์กฐ๋ฅผ ์ถ๋ ฅํด๋ณด์. ์ ๋ ฅ์ด 3 4์ธ ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ์ด ์ถ๋ ฅํ๋ค. 12 11 10 9 3 2 1 8 4 5 6 7 ์ ๋ ฅ์ด 4 5์ธ ๊ฒฝ์ฐ๋ ๋ค์๊ณผ ๊ฐ์ด ์ถ๋ ฅํ๋ค. 20 19 18 17 16 7 6 5 4 15 8 1 2 3 14 9 10 11 12 13 ์ ๋ ฅ์ด codeup.kr ์ฝ๋ #include using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int n,m; cin>>n>>m; int left_right_cnt = m, up_down_cnt = n-1; int arr[101][101] = {0, }; int num = n*m; in.. 2022. 3. 14. 1484 : 2์ฐจ์ ๋ฐฐ์ด ๋ฌํฝ์ด(1) ๋ฌธ์ [๊ธฐ์ด-๋ฐฐ์ด์ฐ์ต] 2์ฐจ์ ๋ฐฐ์ด ๋ฌํฝ์ด ์ฑ์ฐ๊ธฐ 4-1 ๋ค์๊ณผ ๊ฐ์ n*m ๋ฐฐ์ด ๊ตฌ์กฐ๋ฅผ ์ถ๋ ฅํด๋ณด์. ์ ๋ ฅ์ด 3 4์ธ ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ์ด ์ถ๋ ฅํ๋ค. 1 2 3 4 10 11 12 5 9 8 7 6 ์ ๋ ฅ์ด 4 5์ธ ๊ฒฝ์ฐ๋ ๋ค์๊ณผ ๊ฐ์ด ์ถ๋ ฅํ๋ค. 1 2 3 4 5 14 15 16 17 6 13 20 19 18 7 12 11 10 9 8 ์ ๋ ฅ์ด codeup.kr ์ฝ๋ #include using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int N,M; cin>>N>>M; int num = 1; int loop = N*M; int arr[101][101] = {0,}; int x = 0, y = 0; int right_left.. 2022. 3. 14. 3510 : ์์ฐ ๊ด๋ฆฌ ๋ฌธ์ ์์ฐ ๊ด๋ฆฌ ์ฒซ์งธ ์ค์ ๋จ์ ์์ฐ(B)๊ฐ ์ ๋ ฅ๋๋ค. ( 10 >N; for(int i=0; i>inp; v.push_back(inp); } sort(v.begin(),v.end(),greater()); for(int i=0; i 2022. 1. 16. 3701 : ํ์ค์นผ ์ผ๊ฐํ ๋ฌธ์ ํ์ค์นผ ์ผ๊ฐํ ๋ฐฐ์ด์ ๊ฐ์ด ์ปค์ง๋ฏ๋ก ๋ฐฐ์ด์ long long ์ผ๋ก ์ ์ธํด์ผ ํฉ๋๋ค. nCr์ ์ ํ์์ ์๋ฆฌ๋ ์ด ์ผ๊ฐํ์ ์๋ฆฌ์ ๋๊ฐ์ต๋๋ค. nCr = n-1Cr + n-1Cr-1 codeup.kr ์ฝ๋ #include using namespace std; long long dp[51][51]; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int n; cin>>n; for(int i=0; i 2022. 1. 16. 1510 : ํ์ ๋ง๋ฐฉ์ง ๋ฌธ์ ํ์ ๋ง๋ฐฉ์ง ๋ง๋ฐฉ์ง(magic square)์ด๋ ๊ฐ๋ก, ์ธ๋ก, ๋๊ฐ์ ์ ํฉ์ด ๊ฐ์ ์ฌ๊ฐํ์ ๋งํ๋ค. ํ์ n์ ์ ๋ ฅ์ผ๋ก ๋ฐ์ n*n ํ์ ๋ง๋ฐฉ์ง์ ๋ง๋ค์ด ๋ณด์. ๋ง๋๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์์ง๋ง, ์๋์ ๊ฐ์ ๋ฐฉ๋ฒ์ ์ด codeup.kr ์ฝ๋ #include #include using namespace std; int arr[51][51]; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int n; cin>>n; arr[0][n/2]=1; //1. ์์์ ์ฒซํ, ํ ๊ฐ์ด๋ฐ ์ด์ 1์ ๋๋ค. int row=0,col=n/2; bool flag = false; for(int i=2; i 2022. 1. 16. 4503 : ๋ฐ์ด๋ฌ์ค ๋ฌธ์ ๋ฐ์ด๋ฌ์ค 1๋ฒ ์ปดํจํฐ๊ฐ ์ ๋ฐ์ด๋ฌ์ค์ ๊ฑธ๋ ธ์ ๋, 1๋ฒ ์ปดํจํฐ๋ฅผ ํตํด ์ ๋ฐ์ด๋ฌ์ค์ ๊ฑธ๋ฆฌ๊ฒ ๋๋ ์ปดํจํฐ์ ์๋ฅผ ์ฒซ์งธ ์ค์ ์ถ๋ ฅํ๋ค. codeup.kr ์ฝ๋ #include #include using namespace std; int N,M,ans; int visited[101]; vectorv[101]; void dfs(int start){ visited[start]=1; ans++; for(int i=0; i>N>>M; for(int i=0; i>a>>b; v[a].push_back(b); v[b].push_back(a); } dfs(1); cout 2022. 1. 14. 3705 : ์ฐ์๋ ๊ตฌ๊ฐ์ ์ต๋ํฉ ๋ฌธ์ ์ฐ์๋ ๊ตฌ๊ฐ์ ์ต๋ํฉ ์ฒซ์งธ์ค์ ์์ด์ ์์์ ๊ฐ์ n์ด ์ ๋ ฅ๋๋ค. (1 N; for(int i=0; i>arr[i]; } int ans=arr[0]; dp[0]=arr[0]; for(int i=1;i 2022. 1. 14. 3108 : ์ ์ฌ ์ฐธ์ฌ ํ์ ๋ฆฌ์คํธ ๋ง๋ค๊ธฐ 1 ๋ฌธ์ ์ ์ฌ ์ฐธ์ฌ ํ์ ๋ฆฌ์คํธ ๋ง๋ค๊ธฐ 1 10 I 1011 ํ๋ผ์ฐ I 999 ๋ฐฑ๋์ฐ I 999 ์ค๋์ฐ D 999 ๋ฐฑ๋์ฐ I 800 ๋ฐฑ๋์ฐ D 500 ํ๋ผ์ฐ I 900 ๋จ์ฐ I 950 ๊ธ๊ฐ์ฐ I 1205 ์ง๋ฆฌ์ฐ I 700 ๋ถํ์ฐ 1 2 4 5 6 codeup.kr ์ฝ๋ #include #include #include #include using namespace std; int N; struct Data{ int number; string name; }; bool cmp(const Data &v1, const Data &v2){ return v1.number>N; vectorv; for(int i=0; i>cmd>>number>>name; if(cmd=='I'){ if(check[number]==0){ che.. 2022. 1. 14. 2641 : ์๋ค๋ฆฌ์ ๊ณ๋จ ์ค๋ฅด๊ธฐ (Small) ๋ฌธ์ ์๋ค๋ฆฌ์ ๊ณ๋จ ์ค๋ฅด๊ธฐ (Small) * 4๊ฐ์ ๊ณ๋จ์ ์ค๋ฅด๋ ๋ฐฉ๋ฒ์ - 1 1 1 1 - 1 1 2 - 1 2 1 - 2 1 1 - 2 2 - 1 3 - 3 1 codeup.kr ์ฝ๋ #include using namespace std; int dp[16]; int N,ans; void dfs(int current,int before_step,int before_before_step){ if(current==N){ ans++; return; } else if(current>N) return; else{ if(before_step==3||before_before_step==3){ dfs(current+1,1,before_step); dfs(current+2,2,before_step); } else{ .. 2022. 1. 14. ์ด์ 1 2 ๋ค์