Algorithm
-
[BaekJoon] 1463๋ฒ : 1๋ก ๋ง๋ค๊ธฐSW Test/BaekJoon 2021. 4. 18. 16:57
์ด ๊ธ์ c++๋ก ํ์ด๋ฅผ ์์ฑํ์์ต๋๋ค. ๋ฌธ์ ์์ ํ์ด BFS๋ก x/3, x/2, x-1 ๋ฐฉํฅ์ผ๋ก ๋ชจ๋ ํ์ํ์ฌ ํ์ด๋ฅผ ์์ฑํ ์ ์์ง๋ง ๋ฉ๋ชจ๋ฆฌ ์ด๊ณผ๋ก ๋ค๋ฅธ ํ์ด ๋ฐฉ๋ฒ์ ๋ ์ฌ๋ ค์ผ ํฉ๋๋ค. ์ด ๋ฌธ์ ๋ DP๋ฅผ ์ด์ฉํ๋ฉด ์ฝ๊ฒ ํ ์ ์์ต๋๋ค. #include using namespace std; int main(){ int vec[1000001]; int num; cin>>num; vec[1] = 0; for(int i=2;i
-
[BaekJoon] 1431๋ฒ : ์๋ฆฌ์ผ ๋ฒํธSW Test/BaekJoon 2021. 4. 18. 16:53
์ด ๊ธ์ c++๋ก ํ์ด๋ฅผ ์์ฑํ์์ต๋๋ค. ๋ฌธ์ ์์ ํ์ด sort ํจ์๋ฅผ ๊ตฌํํ๋ ๋๋ ๋ฌธ์ ๋ก ์ํ๋ ์กฐ๊ฑด์ ๋ง๊ฒ ๊ตฌํํฉ๋๋ค. sort ํจ์์์ strict weak ordering์ ๋ง๊ฒ ํ์ง ์์ผ๋ฉด ๋ฐํ์ ์๋ฌ๊ฐ ๋ฐ์ํ ์๋ ์์ต๋๋ค. #include #include #include #include #include using namespace std; bool cmp(string& s1, string &s2){ if(s1.size()
-
[BaekJoon] 1406๋ฒ : ์๋ํฐSW Test/BaekJoon 2021. 4. 15. 00:56
์ด ๊ธ์ c++๋ก ํ์ด๋ฅผ ์์ฑํ์์ต๋๋ค. ๋ฌธ์ ์์ ํ์ด ๋ฐฐ์ด ๊ฐ์ ๊ฒฝ์ฐ๋ ์ถ๊ฐ, ์ญ์ ์ ์๊ฐ๋ณต์ก๋๋ O(N)์ด ๊ฑธ๋ฆฌ๋ ๋ฐ๋ฉด, ๋งํฌ๋ ๋ฆฌ์คํธ ๊ฒฝ์ฐ O(1)์ ๋๋ค. ์ด ๋ฌธ์ ๋ ์ถ๊ฐ, ์ญ์ ๊ฐ ์ฉ์ดํด์ผ ๋ ํธํ ๋ฌธ์ ์ด๊ธฐ ๋๋ฌธ์ ๋งํฌ๋ ๋ฆฌ์คํธ๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค. #include #include #include using namespace std; int main(){ ios::sync_with_stdio(0); cin.tie(0); string s; cin>>s; list mylist; for(int i=0;i>num; for(int i=0;i>op; if(op == 'L' && it != mylist.begin()){ it--; } else if(op == 'D' && it != mylist.end()){ i..
-
[BaekJoon] 15649๋ฒ : N๊ณผ MSW Test/BaekJoon 2020. 12. 14. 22:36
์ด ๊ธ์ c++๋ก ํ์ด๋ฅผ ์์ฑํ์์ต๋๋ค. ๋ฌธ์ ์์ ํ์ด ๊ฐ๋จํ๊ฒ ๋ฐฑํธ๋ํน์ ์๊ฐํด์ ํ์์ง๋ง ๋ฌ๊ธ์๋ ๊ณณ์์ ์๊ฐ์ด๊ณผ๊ฐ ๋ฌ๋ค. ์ถ๋ ฅํ๋ ๋ถ๋ถ์์ endl๊ณผ \n์ ์๊ฐ์ฐจ์ด๋ก ์ธํ ๋ฌธ์ ์๋ค. endl๋ ์ถ๋ ฅ๋ฒํผ๋ฅผ ๋น์ฐ๋ ๊ณผ์ (flush)๋ก ์ธํด \n๊ณผ ์ฐจ์ด๊ฐ ๋ฐ์ํฉ๋๋ค. #include using namespace std; void sequence(bool check[10],int vec[10],int cnt, int n, int m){ if(cnt == m){ for(int i=0;i
-
[BaekJoon] 1018๋ฒ : ์ฒด์คํ ๋ค์ ์น ํ๊ธฐSW Test/BaekJoon 2020. 12. 13. 20:43
์ด ๊ธ์ c++๋ก ํ์ด๋ฅผ ์์ฑํ์์ต๋๋ค. ๋ฌธ์ ์์ ํ์ด #include #include using namespace std; string wb[8]={"WBWBWBWB","BWBWBWBW","WBWBWBWB","BWBWBWBW", "WBWBWBWB","BWBWBWBW","WBWBWBWB","BWBWBWBW"}; string vec[50]; int getmin(string temp[8]){ int cnt=0; for(int i=0;in>>m; for(int i=0;i>str; vec[i] = str; } for(int i=0;i
-
[BaekJoon] 2798๋ฒ : ๋ธ๋์ญSW Test/BaekJoon 2020. 12. 12. 23:31
์ด ๊ธ์ c++๋ก ํ์ด๋ฅผ ์์ฑํ์์ต๋๋ค. ๋ฌธ์ ์์ ํ์ด #include using namespace std; int result = 0; int n,m; int vec[100]={0}; bool check[100] = {0}; void blackjak(int cnt,int sum){ if(cnt==3){ if(m>=sum){ result = max(result,sum); } }else{ for(int i=0;i>n>>m; for(int i=0;i>vec[i]; } blackjak(0,0); cout