判断是否聚合数
发布时间:2020-12-13 22:48:11 所属栏目:百科 来源:网络整理
导读:判断是否聚合数 by 伍雪颖 #include iostream#include sstream#include string#include cstdlibusing namespace std;bool match(int i,int j,string text){ string first = text.substr(0,i); string second = text.substr(i,j); string str = ""; str += fi
判断是否聚合数by 伍雪颖 #include <iostream> #include <sstream> #include <string> #include <cstdlib> using namespace std; bool match(int i,int j,string text) { string first = text.substr(0,i); string second = text.substr(i,j); string str = ""; str += first + second; while(str.length() < text.length()) { long long th = atoll(first.c_str())+atoll(second.c_str()); stringstream ss; string third = ""; ss << th; ss >> third; str += third; first = second; second = third; } return str.length()==text.length() && str == text; } bool isAggregatedNum(string text) { int len = text.length()/2; for(int i=1; i<=len; ++i) for(int j=1; j<=len; ++j) if(match(i,j,text)) return true; return false; } int main() { string s = "2222222222222222222222222112222222222222222222222222223333333333333333333333"; cout << isAggregatedNum(s) << endl; return 0; }match方法里的运算没搞懂!- - (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |