zoukankan      html  css  js  c++  java
  • 2014年百度之星程序设计大赛 资格赛第一题 (longlong)

    解题思路:

    只要看(A-V)*K 这个公式的更新值是否大于等于A ,大于的话继续循环,否则报错

    注意一点,数据会爆int

    WA代码:

    #include<stdio.h>
    int main(){
        long long n ,m, v, k;
        int t;
        scanf("%d",&t);
        while(t--){
            scanf("%lld%lld%lld%lld",&n,&m,&v,&k);
            int cnt = 0;
            while(m < n){
                if( (m - v) * k <= m ){
                    cnt = -1;
                    break;
                }
                m = (m - v) * k ;
                ++cnt;
            }
            printf("%d
    ",cnt);
        }
        return 0;
    }

    AC代码:

    #include <iostream>
    using namespace std;
    int main(){
        long long n ,m, v, k;
        int t;
        cin >> t;
        while(t--){
            cin >> n >> m >> v >> k;
            int cnt = 0;
            while(m < n){
                if( (m - v) * k <= m ){
                    cnt = -1;
                    break;
                }
                m = (m - v) * k ;
                ++cnt;
            }
            cout << cnt << endl;
        }
        return 0;
    }

     AC代码(比较复杂):

    #include<stdio.h>
    #include<math.h>
    int main(){
        long long n ,m, v, k;
        int t;
        scanf("%d",&t);
        while(t--){
            scanf("%I64d%I64d%I64d%I64d",&n,&m,&v,&k);
            long long ans = m;
            if(ans >= n){
                printf("0
    ");
                continue;
            }
            if((ans - v) * k <= ans || ans - v <= 0 || k <= 0 ||(ans - v) * k < 0){
                printf("-1
    ");
                continue;
            }
            int cnt = 0;
            while(ans < n){
                ++cnt;
                if(ans - v <= 0 || (ans - v) * k < 0){
                    cnt = -1;
                    break;
                }
                ans = (ans - v) * k ;
            }
            printf("%d
    ",cnt);
        }
        return 0;
    }
  • 相关阅读:
    Springboot整合activeMq
    linux下安装activeMq
    linux下配置jdk
    thinkphp5 集成 redis
    linux下安装redis
    tp5集成swagger
    lombok
    idea下springboot环境搭建
    Mac环境下maven安装配置
    idea环境下搭建swagger2接口文档
  • 原文地址:https://www.cnblogs.com/wushuaiyi/p/3732952.html
Copyright © 2011-2022 走看看