pipioj
江老湖了
这个作者很懒,什么都没留下…
展开
-
PIPIOJ 1034: 字典序最小的子序列
题目描述:PIPIOJ (c语言) PIPI有一个字符串S,现在它想刁难刁难一下聪明的你,首先它给你一个整数K,要你找出字典序最小的字符串T,并且字符串T满足: 1. T由S的子序列构成.(如S="abcde",则串"ace","bcd","ade"都由S的子序列构成) 2. T的长度为K. 思路:考察字典序的概念。算法关键在于找k个最小字典序字符串,初始化从前倒数k个数开始,每次加入一个数,同时记录并取出基于上次队列中最小的数的位置。 #include <stdio.h> #i..原创 2022-03-20 19:15:30 · 1238 阅读 · 0 评论 -
PIPIOJ 1001: 水仙花数
“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=1^3+5^3+3^3。现在要求输出所有在m和n范围内的水仙花数。 输入数据有多组,每组占一行,包括两个整数m和n(100<=m<=n<=999)。 对于每个测试实例,要求输出所有在给定范围内的水仙花数,就是说,输出的水仙花数必须大于等于m,并且小于等于n,如果有多个,则要求从小到大排列在一行内输出,之间用一个空格隔开(注意每组输出的最后一个数之后不要加空格);如果给定的范围内不存在水仙花数,则输出no;每个测试原创 2022-03-20 17:23:49 · 172 阅读 · 0 评论 -
PIPIOJ 1000: 回文串问题
PIPIOJ判断回文串。用数组存储输入字符串,需要求出每个字符串串长。 代码: #include <stdio.h> int fun(char a[],int n){ int low=0,high=n; int mid=(low+high)/2;int i=0; while(i<=mid){ if(a[i]==a[n]){ i++;n--; } else return 0; }原创 2022-03-20 16:22:46 · 384 阅读 · 0 评论 -
PIPIOJ 1030: 平行四边形
题目:PIPIOJ 思路:简单题。多组输入,对每组参数mnc直接printf输出打印。第一行和最后一行输出n个字符,中间m-2行只打印两个字符。主要涉及循环输出的知识点。 代码: #include <stdio.h> int main(){ int m,n;char c; while(scanf("%d %d %c",&m,&n,&c)!=EOF){ for(int i=1,k=1;i<=m;i++,k++){ .原创 2022-03-20 00:56:00 · 423 阅读 · 0 评论 -
PIPIOJ 1029: 整数的立方和
题目链接:PIPIOJ 代码简单但是输入输出需要注意格式。(oj语言编译器不同) 代码: #include <stdio.h> #include <string.h> int main(){ //题目输入k<=1000(int),count用long long 型 int k,i; long long count; while(scanf("%d",&k)!=EOF){ count=0;原创 2022-03-19 23:36:34 · 309 阅读 · 0 评论 -
PIPIOJ 1510 换座位问题
问题链接PIPIOJ 思路:多组输入字符串(数组),交换指定两行字符串的方法通过swap和strcpy实现(c语言没有alth库需要定义函数swap)。注意:数组大小不能太小否则会数组越界,段错误!!! 代码如下: #include <stdio.h> #include <string.h> void swap(char *a1,char*a2){ char c[100]; strcpy(c,a1); strcpy(a1,a2); strcp原创 2022-03-19 22:30:09 · 825 阅读 · 0 评论