首页 > 其他分享 >MT1301-MT1310 码题集 (c 语言详解)

MT1301-MT1310 码题集 (c 语言详解)

时间:2024-10-08 19:21:46浏览次数:3  
标签:main MT1301 MT1310 int max return double 码题 include

MT1301·1的补码

c 语言代码实现

#include <stdio.h>
int main() {

    long n = 0;
    long b = 0;

    scanf("%ld", &n);
    int i = 0;
    // 
    while (b < n) {
        b = b * 16 + 0xf;
    }
    printf("%ld", b - n);

    return 0;
}

 MT1302·二进制转格雷码

c 语言代码实现

#include <stdio.h>
#include <string.h>
int main() {

    char s[10];
    fgets(s, sizeof(s), stdin);

    for (int a = 3; a >= 1; a--) {
        if(s[a] != s[a - 1]) s[a] = '1';
        else s[a] = '0';
    }
    printf("%s",s);
    return 0;
}

 MT1303·格雷码转二进制

c 语言代码实现 

#include <stdio.h>
#include <string.h>
int main() {
    char s[10];
    fgets(s, sizeof(s), stdin);
    for (int a = 1; a <= 3; a++) {
        if (s[a] != s[a - 1])
            s[a] = '1';
        else
            s[a] = '0';
    }
    printf("%s", s);
    return 0;
}

 MT1304·十进制与格雷码

 

c 语言代码实现

#include <stdio.h>
int main() {
    int n, cnt = 3, A[4], ans;
    scanf("%d", &n);
    while (n) {
        A[cnt--] = n % 2;
        n /= 2;
    }
    for (int a = 3; a >= 2; a--) {
        if (A[a] != A[a - 1])
            A[a] = 1;
        else
            A[a] = 0;
    }
    for (int b = 3, k = 1; b >= 1; b--, k = k * 2)
        ans += A[b] * k;
    printf("%d",ans);
    return 0;
}

 MT1305·三位数

C语言代码实现

 

#include <stdio.h>

int main() {
    int number;

    // 遍历可能的自然数范围
    for (number = 1; number < 729; number++) { // 729 是 9^3,最大三位数的九进制数
        // 获取七进制表示
        int base7 = number;
        int digit7[3];
        for (int i = 2; i >= 0; i--) {
            digit7[i] = base7 % 7;
            base7 /= 7;
        }
        
        // 获取九进制表示
        int base9 = number;
        int digit9[3];
        for (int i = 2; i >= 0; i--) {
            digit9[i] = base9 % 9;
            base9 /= 9;
        }
        
        // 检查七进制和九进制是否反向相等
        if (digit7[0] == digit9[2] && digit7[1] == digit9[1] && digit7[2] == digit9[0]) {
            printf("%d\n", number);
        }
    }

    return 0;
}

MT1306·牛顿迭代法

 

 

c语言代码实现

#include <stdio.h>
#include <math.h>

double f(double x) {
    return 2 * x * x * x + 4 * x * x - 7 * x - 6;
}

double f_prime(double x) {
    return 6 * x * x + 8 * x - 7;
}

int main() {
    double x0 = 1.5; // 初始值
    double tolerance = 1e-6; // 收敛阈值
    double x1;

    // 牛顿迭代法
    do {
        x1 = x0 - f(x0) / f_prime(x0);
        if (fabs(x1 - x0) < tolerance) {
            break;
        }
        x0 = x1;
    } while (1);

    // 输出结果
    printf("%.6f\n", x1);
    
    return 0;
}

MT1307·对分法

c 语言代码实现 

#include <stdio.h>
double halving(double x) { return x * x - 6 * x - 1; }
int main() {
    double left = -10; // 区间左端点
    double right = 0;  // 区间右端点
    double middle;      // 中点
    double tolerance = 1e-6; // 收敛阈值

    if (halving(left) * halving(right) >= 0) {
        return 1;
    }

    // 二分法
    do {
        middle = (left + right) / 2; // 计算中点 可以提前计算
        if (halving(middle) == 0.0) {
            break; // 找到根
        } else if (halving(middle) * halving(left) < 0) {
            right = middle; // 根在左半区间
        } else {
            left = middle; // 根在右半区间
        }
    } while (right - left > tolerance); // 判断是否收敛
    // 输出结果
    printf("%.6f", middle);
    return 0;
}

MT1308·4个自然数

c语言代码实现

#include <stdio.h>

int main() {
    int p, q, r;

    // 遍历 p, q, r, s
    for (p = 2; p <= 4; p++) {
        for (q = p; q <= 6; q++) {
            for (r = q; r <= 12; r++) {
                int mem = p * q * r;
                int denominator = p * q * r - q * r - p * r - p * q;
                if (denominator)
                    if ((mem % denominator == 0) && (mem / denominator >= r))
                        printf("%d %d %d %d\n", p, q, r, mem / denominator);
            }
        }
    }

    return 0;
}

MT1309·最大和

c 语言代码实现

#include <stdio.h>
int main() {
    int length;
    scanf("%d", &length);
    int array[length];
    for (int i = 0; i < length; i++) {
        scanf("%d", &array[i]);
    }
    int max_current = array[0]; // 当前最大连续子序列
    int max_global = array[0];  // 全局最大

    for (int i = 1; i < length; i++) {
        max_current = (array[i] > max_current + array[i] ? array[i]: (max_current + array[i]));
        if(max_current > max_global){
            max_global = max_current;
        }
    }
    printf("%d",max_global);
    return 0;
}

MT1310·最大乘积

c语言代码实现

#include <stdio.h>

int main() {
    int N;
    // 输入数组长度
    scanf("%d", &N);

    long long int arr[N];
    // 输入数组元素
    for (int i = 0; i < N; i++) {
        scanf("%lld", &arr[i]);
    }

    long long int max = arr[0];
    for (int i = 0; i < N; i++) {
        long long int x = 1;
        for (int j = i; j < N; j++) {
            x *= arr[j];
            if (x > max)
                max = x;
        }
    }

    printf("%lld",max);

    return 0;
}

以上就是这期c语言内容的详解了 有其他的问题可以在评论区评论 或者私聊 看到一定回复 有其他关于计算机的所有问题都可以问 只需要一个小小的关注

标签:main,MT1301,MT1310,int,max,return,double,码题,include
From: https://blog.csdn.net/xinfanyyds/article/details/142739588

相关文章

  • P1928 外星密码题解
    初看这题时,感觉就是一个简简单单的递归,便有了以下代码:#include <bits/stdc++.h>using namespace std;string re(){    string s="",s1="";    char c;    int n;    while(cin>>c){        if(c=='['){            cin>>n;......
  • 面试速通-SQL编码题
    〇、前话SQL题是数据相关的面试无可避免的小BOSS,虽然不同公司面试出题会披上不同的马甲,侧重各异,但总结起来题型就是那4、5种。下面让我们花上几分钟一起来通关它吧!一、连续日期计算1,例题表字段:用户ID,账户余额,系统余额日期。求出余额大于1000的用户的最大连续天数。2,解题要......
  • 【码题集】习题
    目录史莱姆融合松鼠接松果 新月轩就餐 史莱姆融合根据题意就是一道集合合并的题,所以要用并查集,不过最后我们要输出整个序列,所以要在合并的时候维护一个链表,以便最终合并成一个大集合的时候,输出整个链表就是答案。不过这里有一点要注意,就是我们在更新链表的时候是把......
  • 代码题答案
    importjava.util.Random;publicclassMain{publicstaticvoidcharCode(){StringBuildersb=newStringBuilder();Randomrandom=newRandom();for(inti=0;i<5;i++){intrandomCharType=random.nextlnt(2);/随机选择大小写if(randomCharType==0){/......
  • 【408精华知识】史上最全的数据结构代码题总结!三万字长文!!!
    关于数据结构代码题,可以说是让很多同学感到头疼了,书上的代码太繁琐、网上的总结不全面让大家对代码题感到云里雾里,那么这篇文章可能会给大家带来一点启发,因为我自己也是深受代码题的折磨,所以一直想写一篇有关它的总结,希望能够做到全面、简洁,让大家用最快的速度记住代码书......
  • 【MISC】一道假的二维码题目学习zxing库[python解读二维码]
    引言这道题目的考点是文件格式、双图差值、Ook!编码、PRC等,我做这题的重点是复习巩固python读取二维码zxing库的使用。例题┌───────────────────────────────────────────────────┐│马老师的秘籍......
  • 深度学习手撕代码题
    目录:目录PyTorch实现注意力机制、多头注意力与自注意力Numpy广播机制实现矩阵间L2距离的计算Conv2D卷积的Python和C++实现Numpy实现bbox_iou的计算Numpy实现FocallossPython实现nms、softnmsPython实现BN批量归一化PyTorch卷积与BatchNorm的融合分割网络损失函数......
  • C语言代码题
    C语言代码--练习题试写一个函数,计算字符串s中最大连续相同的字符个数。例如,若s为"aaabbbb",则返回值为4;若s为"abcde",则返回值为1。#include<stdio.h>/******************************************************************************functionname:max_sam......
  • Venom ctf 密码题 狂飙
    题目如下,懒得找题目qaqimportosfromflagimportflagfromCrypto.Util.numberimport*fromCrypto.CipherimportAESm=88007513702424243702066490849596817304827839547007641526433597788800212065249key=os.urandom(24)key=bytes_to_long(key)n=m%keyfl......
  • 数据结构代码题-栈、队列
    目录栈、队列栈队列栈和队列的应用栈、队列栈栈的定义#defineMaxSize100//储存空间的初始分配量typedefintElemType;typedefstruct{inttop;//栈顶指针ElemTypedata[MaxSize];//存放元素的动态数组空间}sqstack;链栈的数据结构描述type......