牛客每日一题连分数题意题目的意思大致是给出一个分数 p/q 要求我们把这个分数转化成如下形式思路观察转化的公式我们发现这个转化的过程实际上是一个迭代的过程对于当前的分子 p 和分母 q 我们提取出整数部分 a 和剩下的分数部分 b / c 之后我们转化成 a 1/(c/b) 对于 c / b 我们继续进行以上操作。基于这样的思路我们很轻易地可以想到用递归去完成这样的转化。这样我们就完美地解决了这道题目。正解代码#includebits/stdc.h using namespace std; int T; int p,q; inline string work(int x,int y) { if(x%y 0) return to_string(x/y); int tmp x/y; x % y; if(y%x 0) return to_string(tmp) 1/ work(y,x); else return to_string(tmp) 1/ { work(y,x) }; } inline void solve() { cinpq; coutp/q work(p,q)\n; } int main() { cinT; while(T--) solve(); return 0; }以上就是这篇文章的全部内容。