首页 > 其他分享 >洛谷P1014Cantor 表 C语言

洛谷P1014Cantor 表 C语言

时间:2024-07-09 20:30:22浏览次数:13  
标签:P1014Cantor 洛谷 int sum 列数 C语言 行数 printf input

#include<stdio.h>
int main()
{
    int input;
    int h, k;
    int i, sum=0;

    scanf("%d", &input);

    for (i = 1; ; i++){
        sum += i; // 求出input数在那个范围内,i就是行数, sum就是所有行加起来数的个数
        if (sum >= input){ 
            h = i; // 求解行数
            // 纠正列数的计算
            // 例如要打印第三个数,那么就是第二行的第二个数
            // 已知行数h = 2 = i, sum等于3 sum - 2=1
            // k = 3-1=2从而得出列数
            sum -= i;
            k = input - sum;
            break;
        }
    }

    // 行数为偶数时,分子递增,分母递减
    // 行数为奇数时,分子递减,分母递增
    if (h % 2 == 0){ 
        printf("%d/%d", k, h-k+1);
    } else{
        printf("%d/%d", h-k+1, k);
    }
	return 0;
}

标签:P1014Cantor,洛谷,int,sum,列数,C语言,行数,printf,input
From: https://blog.csdn.net/qq_74568860/article/details/140298766

相关文章

  • 洛谷P1308 [NOIP2011 普及组] 统计单词数C语言
    #include<stdio.h>#include<string.h>#include<ctype.h>intmain(){charcheck[11];charstr[1000001];intf_num=0;intcount=0;inti=0;intj=0;intp=1;gets(check);gets(str);......
  • 洛谷 P6464 [传智杯 #2 决赛] 传送门
    通过便利每两个点之间的传送门,再便利一次其他点与传送点的路长度,没路的情况是最大值不会考虑,有路就取经过传送门和原本最短路的最小值/*台州第一深情*/include<bits/stdc++.h>usingnamespacestd;usingi64=long;usingll=longlong;typedefpair<int,int>PII;co......
  • 从零开始学习嵌入式----C语言数据存储(大端与小端)
     目录一、什么是数据中的高位与低位?内存空间中的高地址与低地址?1)内存空间中的低地址与高地址2)数据中的高位与低位二、什么是大端存储与小端存储1)大端存储2)小端存储三、大小端存储方法的测试1)使用指针测试大小端2)使用共用体测试大小端一、什么是数据中的高位与......
  • C语言学习笔记(02)——关键字概念
    sizeof编译器给我们查看内存空间容量的一个工具不存在函数实现,在任何情况下都可以使用inta:printf("theais%d\n",sizeof(a));printf("theais%lu\n",sizeof(a)); //最好使用%lu打印,因为sizeof默认返回的是unsignedlong类型的>>>4char:硬件处理的最小单位;8bit=1B,8bi......
  • c语言实战-极简扫雷
    C语言/c++写的C语言实战项目扫雷结构比较清晰,仅供参考:核心是扫雷的递归算法实现上代码:#include<stdio.h>#include<stdlib.h>#include<time.h>#defineSIZE10#defineMINES15charboard[SIZE][SIZE];//游戏棋盘//初始化棋盘,'-'表示未揭示的区域voidinit......
  • 【C语言】指针(3):探索-不同类型指针变量
    目录一、字符指针变量二、数组指针变量三、二维数组传参的本质四、函数指针变量4.1函数指针变量4.2函数指针变量的使用4.3函数指针变量的拓展五、函数指针数组六、转移表的应用通过深入理解指针(1)和深入理解指针(2),我们对指针有了一个初步的了解,学会了一级指针、二......
  • 数据结构——二叉树之c语言实现堆与堆排序
    目录前言:1.二叉树的概念及结构1.1特殊的二叉树 1.2二叉树的存储结构  1.顺序存储2.链式存储 2.二叉树的顺序结构及实现 2.1堆的概念   ​编辑2.2堆的创建3.堆的实现3.1堆的初始化和销毁 初始化:销毁: 插入:向上调整:删除: 向下调整: 堆顶元素......
  • 经典C语言笔试面试题目
    01.请填写bool,float,指针变量与“零值”比较的if语句。提示:这里“零值”可以是0,0.0,FALSE或者“空指针”。例如intn与“零值”比较的if语句为:if(n==0)if(n!=0)以此类推。请写出boolflag与“零值”比较的if语句:if(flag){}if(!fl......
  • C++入门(C语言过渡)
    文章目录前言一、C++关键字二、命名空间三、C++输入&输出四、缺省参数五、函数重载六、引用七、inline八、nullptr总结前言C++是一种通用的、高级的、静态类型的编程语言,它在20世纪80年代由丹尼斯·里奇创建的C语言基础上发展而来。以下是C++发展的一些重要里程碑。......
  • 嵌入式C语言面试相关知识——CPU、进程和线程相关(相关问题很多,会经常过来更新)
    嵌入式C语言面试相关知识——CPU、进程和线程相关一、博客声明二、自问题目——CPU相关1、什么是中断?如何处理中断?2、解释上下文切换(ContextSwitch)?3、在嵌入式中如何优化CPU使用?三、自问题目——进程相关1、什么是进程?2、嵌入式系统中进程和线程的区别是什么?3、在嵌......