OJ题归纳

1、求最大公约数 

利用辗转相除法求最大公约数

int gcd(int a,int b)                           
{                                              
    int c,r;                                                                              
    if(a<b){c=a;a=b;b=c;}    
if(b==0) return a; r
=a%b; while(r) { a=b;b=r;r=a%b; } return b; }

2、求最小公倍数

数学知识:由于两个数的乘积等于这两个数的最大公约数与最小公倍数的积.即(a,b)×[a,b]=a×b.所以,求两个数的最小公倍数,就可以先求出它们的最大公约数,然后用上述公式求出它们的最小公倍数.

3、求多个数的最小公倍数

求几个自然数的最小公倍数,可以先求出其中两个数的最小公倍数,再求这个最小公倍数与第三个数求最小公倍数,依次求下去,直到最后一个为止.最后所得的那个最小公倍数,就是所求的几个数的最小公倍数.

 

4、题目:对于方程 8*x^4+7*x^3+2*x^2+3*x+6=Y 给定一个实数Y(|Y|<=1000000000),求方程的解 x=k,其中0<=k<=100,若方程无解,则输出“No solution!”(不含引号)若方程存在一个解 x=k 满足 0<=k<=100,则输出“x = k”(不含引号,k 为方程的解,精确 到小数点后 4 位) 否则,输出“No solution!”(不含引号)

  本质问题是求解方程组

  求解策略:使用二分法 从两侧逼近答案

 

5、保留大数的后几位(比如四位)

for(i=0;i<=n;i++)   
{ 
    ans=ans*A;              
    ans=ans%10000;     
} 

 

6、http://blog.csdn.net/xiexievv/article/details/6831194

      printf格式化详解

 

7、题目

Alice 和 Bob 玩一个游戏,一堆扑克,2~10,J,Q,K,A,共 13 种牌,每种 4
张,规定牌力大小为:3~10 正常点数大小比较,10<J <Q<K<A<2.一共一
个回合,每个回合每人抽一张牌,牌力大者胜

难点:如何比较 不好比较的2,10,A等

策略:将所有字符按其规定的大小对应转化为字符

转载于:https://www.cnblogs.com/wshyj/p/6606825.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值