๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Algorithm ๐Ÿง‘๐Ÿป‍๐Ÿ’ป/๋ฐฑ์ค€(BOJ)315

[๋ฐฑ์ค€,c++] 17276๋ฒˆ - ๋ฐฐ์—ด ๋Œ๋ฆฌ๊ธฐ ๋ฌธ์ œ 17276๋ฒˆ: ๋ฐฐ์—ด ๋Œ๋ฆฌ๊ธฐ ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์— ๋Œ€ํ•ด ํšŒ์ „ ์—ฐ์‚ฐ์„ ๋งˆ์นœ ํ›„ ๋ฐฐ์—ด์˜ ์ƒํƒœ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. n์ค„์— ๊ฑธ์ณ ๊ฐ ์ค„์— n๊ฐœ์˜ ์ •์ˆ˜๋ฅผ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net ์ฝ”๋“œ #include #include using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int T; cin>>T; while(T--){ int n, d; cin>>n>>d; int map[501][501] = {0, }; int temp[501][501]; for(int i=0; imap[i][k]; } } memcpy(temp, map, sizeof(temp)); if(d > 0){ // ์‹œ๊ณ„๋ฐฉํ–ฅ 45๋„ ํšŒ์ „ int c.. 2022. 9. 15.
[๋ฐฑ์ค€,c++] 20436๋ฒˆ - ZOAC 3 ๋ฌธ์ œ 20436๋ฒˆ: ZOAC 3 ์ฒซ ๋ฒˆ์งธ ์ค„์—๋Š” ๋‘ ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž sL, sR์ด ์ฃผ์–ด์ง„๋‹ค. sL, sR์€ ๊ฐ๊ฐ ์™ผ์† ๊ฒ€์ง€์†๊ฐ€๋ฝ, ์˜ค๋ฅธ์† ๊ฒ€์ง€์†๊ฐ€๋ฝ์˜ ์ฒ˜์Œ ์œ„์น˜์ด๋‹ค. ๊ทธ ๋‹ค์Œ ์ค„์—๋Š” ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ ๊ตฌ์„ฑ๋œ ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ๋ฌธ์ž์—ด์˜ www.acmicpc.net ์ฝ”๋“œ #include using namespace std; int map[3][10]; string top = "qwertyuiop"; string middle = "asdfghjkl"; string bottom = "zxcvbnm"; struct Info{ int r; int c; char hand; }; Info l, r; Info find_coor(char key){ int _r = 0, _c = 0; char hand; for(int i=0.. 2022. 9. 15.
[๋ฐฑ์ค€,c++] 20164๋ฒˆ - ํ™€์ˆ˜ ํ™€๋ฆฌ ํ˜ธ์„ ๋ฌธ์ œ 20164๋ฒˆ: ํ™€์ˆ˜ ํ™€๋ฆญ ํ˜ธ์„ ํ˜ธ์„์ด๋Š” ์ง์ˆ˜๋ž‘ ํ™€์ˆ˜ ์ค‘์—์„œ ์ด๋‹ˆ์…œ์ด ๊ฐ™์€ ํ™€์ˆ˜๋ฅผ ๋” ์ข‹์•„ํ•œ๋‹ค. ์šด์ „์„ ํ•˜๋˜ ํ˜ธ์„์ด๋Š” ์•ž์ฐจ์˜ ๋ฒˆํ˜ธํŒ์ด ํ™€์ˆ˜๋กœ ๊ฐ€๋“ํ•  ๋•Œ ์‚ฌ๋ž‘์Šค๋Ÿฌ์›€์„ ๋Š๋‚„ ์ •๋„์ด๋‹ค. ์ „ํ™”๋ฒˆํ˜ธ๋„ ํ™€์ˆ˜๋งŒ ์žˆ๊ณ  ์‹ถ๋‹ค. ๊ทธ๋ ‡๊ฒŒ www.acmicpc.net ์ฝ”๋“œ #include #include #include using namespace std; int max_v = -1, min_v = 1e9+1; void backtraking(string s, int cnt){ for(char c : s){ if((c-'0')&1) cnt++; // ํ™€์ˆ˜ ๊ฐฏ์ˆ˜ ์นด์šดํŒ… } if(s.length() == 1){ max_v = max(max_v , cnt); min_v = min(min_v, cnt); return; } if(s.. 2022. 9. 15.
[๋ฐฑ์ค€,c++] 20546๋ฒˆ - ๊ธฐ์ ์˜ ๋งค๋งค๋ฒ• ๋ฌธ์ œ 20546๋ฒˆ: ๐Ÿœ ๊ธฐ์ ์˜ ๋งค๋งค๋ฒ• ๐Ÿœ 1์›” 14์ผ ๊ธฐ์ค€ ์ค€ํ˜„์ด์˜ ์ž์‚ฐ์ด ๋” ํฌ๋‹ค๋ฉด "BNP"๋ฅผ, ์„ฑ๋ฏผ์ด์˜ ์ž์‚ฐ์ด ๋” ํฌ๋‹ค๋ฉด "TIMING"์„ ์ถœ๋ ฅํ•œ๋‹ค. ๋‘˜์˜ ์ž์‚ฐ์ด ๊ฐ™๋‹ค๋ฉด "SAMESAME"์„ ์ถœ๋ ฅํ•œ๋‹ค. ๋ชจ๋“  ๊ฒฐ๊ณผ ๋”ฐ์˜ดํ‘œ๋ฅผ ์ œ์™ธํ•˜๊ณ  ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net ์ฝ”๋“œ #include #include using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int N; cin>>N; vector v; for(int i=0; i>inp; v.push_back(inp); } int jun = 0, sung = 0; int _N = N; for(auto it: v){ // ์ค€ํ˜„์ด์˜ ๋งค์ˆ˜ if(it jun) cout 2022. 9. 15.
[๋ฐฑ์ค€,c++] 2615๋ฒˆ - ์˜ค๋ชฉ ๋ฌธ์ œ 2615๋ฒˆ: ์˜ค๋ชฉ ์˜ค๋ชฉ์€ ๋ฐ”๋‘‘ํŒ์— ๊ฒ€์€ ๋ฐ”๋‘‘์•Œ๊ณผ ํฐ ๋ฐ”๋‘‘์•Œ์„ ๊ต๋Œ€๋กœ ๋†“์•„์„œ ๊ฒจ๋ฃจ๋Š” ๊ฒŒ์ž„์ด๋‹ค. ๋ฐ”๋‘‘ํŒ์—๋Š” 19๊ฐœ์˜ ๊ฐ€๋กœ์ค„๊ณผ 19๊ฐœ์˜ ์„ธ๋กœ์ค„์ด ๊ทธ๋ ค์ ธ ์žˆ๋Š”๋ฐ ๊ฐ€๋กœ์ค„์€ ์œ„์—์„œ๋ถ€ํ„ฐ ์•„๋ž˜๋กœ 1๋ฒˆ, 2๋ฒˆ, ... ,19๋ฒˆ์˜ ๋ฒˆํ˜ธ www.acmicpc.net ์ฝ”๋“œ #include #include using namespace std; int N = 19; int map[19][19]; vector coor; /* ํ•˜๋‹จ, ์šฐ์ธก, ์šฐ์ƒ๋‹จ, ์šฐํ•˜๋‹จ */ bool check(pair _coor){ // ํ•˜๋‹จ int r = _coor.first; int c = _coor.second; if(r 2022. 9. 15.
[๋ฐฑ์ค€,c++] 2002๋ฒˆ - ์ถ”์›” ๋ฌธ์ œ 2002๋ฒˆ: ์ถ”์›” ์ž…๋ ฅ์€ ์ด 2N+1๊ฐœ์˜ ์ค„๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. ์ฒซ ์ค„์—๋Š” ์ฐจ์˜ ๋Œ€์ˆ˜ N(1 ≤ N ≤ 1,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ๋Œ€๊ทผ์ด๊ฐ€ ์ ์€ ์ฐจ๋Ÿ‰ ๋ฒˆํ˜ธ ๋ชฉ๋ก์ด ์ฃผ์–ด์ง€๊ณ , N+2์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ์˜์‹์ด www.acmicpc.net ์ฝ”๋“œ #include #include #include using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int N; cin>>N; unordered_map um; vector inp; for(int i=0; i>_inp; um.insert({_inp, i}); } for(int i=0; i>_inp; inp.push_back(_inp); } int c.. 2022. 9. 15.
[๋ฐฑ์ค€,c++] 11383๋ฒˆ - ๋šŠ ๋ฌธ์ œ 11383๋ฒˆ: ๋šŠ ์ž…๋ ฅ์˜ ์ฒซ ๋ฒˆ์งธ ์ค„์— N, M (1 ≤ N, M ≤ 10)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ N๊ฐœ์˜ ์ค„์˜ ๊ฐ ์ค„์—๋Š” M๊ฐœ์˜ ๋ฌธ์ž๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ N๊ฐœ์˜ ์ค„์˜ ๊ฐ ์ค„์—๋Š” 2M๊ฐœ์˜ ๋ฌธ์ž๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋ชจ๋“  ๋ฌธ์ž๋Š” ์˜๋ฌธ ์•ŒํŒŒ๋ฒณ ๋Œ€๋ฌธ์ž ํ˜น www.acmicpc.net ์ฝ”๋“œ #include #include using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int N, M; cin>>N>>M; vector v, scale; for(int i=0; i>inp; v.push_back(inp); } for(int i=0; i>inp; scale.push_back(inp); } for(int idx=0; idx 2022. 9. 15.
[๋ฐฑ์ค€,c++] 19939๋ฒˆ - ๋ฐ• ํ„ฐ๋œจ๋ฆฌ๊ธฐ ๋ฌธ์ œ 19939๋ฒˆ: ๋ฐ• ํ„ฐ๋œจ๋ฆฌ๊ธฐ $N$๊ฐœ์˜ ๊ณต์„ $K$๊ฐœ์˜ ๋ฐ”๊ตฌ๋‹ˆ์— ๋ฌธ์ œ์˜ ๊ทœ์น™์„ ๋งŒ์กฑํ•˜๋ฉด์„œ ๋‚˜๋ˆ  ๋‹ด์„ ์ˆ˜ ์žˆ๋‹ค๋ฉด, ๊ฐ€์žฅ ๋งŽ์ด ๋‹ด๊ธด ๋ฐ”๊ตฌ๋‹ˆ์™€ ๊ฐ€์žฅ ์ ๊ฒŒ ๋‹ด๊ธด ๋ฐ”๊ตฌ๋‹ˆ์˜ ๊ณต์˜ ๊ฐœ์ˆ˜ ์ฐจ์ด๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ๋‚˜๋ˆ  ๋‹ด์„ ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ์—๋Š” -1์„ www.acmicpc.net ์ฝ”๋“œ #include #include using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int N, K; cin>>N>>K; int sum = (K * (K+1)) / 2; // ๋“ฑ์ฐจ์ˆ˜์—ด ํ•ฉ if(sum > N) cout 2022. 9. 14.
[๋ฐฑ์ค€,c++] 2141๋ฒˆ - ์šฐ์ฒด๊ตญ ๋ฌธ์ œ 2141๋ฒˆ: ์šฐ์ฒด๊ตญ ์ฒซ์งธ ์ค„์— N(1 ≤ N ≤ 100,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ N๊ฐœ์˜ ์ค„์—๋Š” X[1], A[1], X[2], A[2], …, X[N], A[N]์ด ์ฃผ์–ด์ง„๋‹ค. ๋ฒ”์œ„๋Š” |X[i]| ≤ 1,000,000,000, 0 ≤ A[i] ≤ 1,000,000,000 ์ด๋ฉฐ ๋ชจ๋“  ์ž…๋ ฅ์€ ์ •์ˆ˜์ด๋‹ค. www.acmicpc.net ์ฝ”๋“œ #include #include #include #define ll long long int using namespace std; ll sum[100001]; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); ll N; cin>>N; vector v; for(int i=0; i>a>>b; v.push_back({a, .. 2022. 9. 13.