class Solution {public: string st; vector<string> ans; void dfs(int idx,string temp,int cnt){ if(cnt==4){ if(idx==st.length()){ ans.push_back(temp.substr(0,temp.length()-1));return; } } vector<string> t;string a=""; for(int i=idx;i<st.length();i++){ if(0<=st[i]-'0'&&st[i]-'0'<=9){ a+=st[i]; if(0<=stoi(a)&&stoi(a)<=255){ t.push_back(a); }else break; }else break; } for(int i=0;i<t.size();i++){ string a = t[i]; if(a.length()!=1&&a[0]=='0') continue; dfs(idx+i+1,temp+t[i]+".",cnt+1); } } vector<string> restoreIpAddresses(string s) { st = s;string a = ""; dfs(0,a,0); return ans; }};재귀로 했습니다지적이나 조언 매우감사합니다
댓글 영역
획득법
① NFT 발행
작성한 게시물을 NFT로 발행하면 일주일 동안 사용할 수 있습니다. (최초 1회)
② NFT 구매
다른 이용자의 NFT를 구매하면 한 달 동안 사용할 수 있습니다. (구매 시마다 갱신)
사용법
디시콘에서지갑연결시 바로 사용 가능합니다.