蓝桥杯—时间显示(C语言解法)
题目描述
注意:
- 1s=1000ms
- 输出格式,输出位数为两位,不足用0补充,格式为{"%.2d"}
代码
#include<stdio.h>
int main(){
int tem,day=0,hour=0,min=0,sec=0;
long long time;
scanf("%lld",&time);
day=time/(24*60*60*1000);//求出一共有多少整天
tem=time%(24*60*60*1000);//求出有多少不足一天的毫秒数
hour=tem/(1000*60*60);
min=(tem%(1000*60*60))/(1000*60);
sec=(tem%(1000*60))/(1000);
printf("%.2d:%.2d:%.2d",hour,min,sec);
return 0;
}
推荐这些文章:
题目描述
小蓝在一个n行m列的方格图中玩一个游戏。
开始时,小蓝站在方格图的左上角,即第1行第1列。
小蓝可以在方格图上走动,走动时,如果当前在第r行第c列,他不能走到行号比r小的行,也不能走到列号比c小的列。同时,他一步走的直线距离不超过3。
例如,如果当前小蓝在第3行第5列,他下一步可以走到第3行第6列、第3行第7列、第3行第8列、第4行第5列、第4行第6列、第4行第7列、第5行第5列、第5行第6列、第6行第5列之一。
小蓝最终要走到第n行第m列。
在图中,有的位置有奖励,走上去即可获得,有的位置有惩罚,走上去就要接受惩罚。奖励和惩罚最终抽象成一个权值,奖励为正,惩罚为负。
小蓝希望,...
题目描述
小蓝正在学习一门神奇的语言,这门语言中的单词都是由小写英文字母组 成,有些单词很长,远远超过正常英文单词的长度。小蓝学了很长时间也记不住一些单词,他准备不再完全记忆这些单词,而是根据单词中哪个字母出现得最多来分辨单词。
现在,请你帮助小蓝,给了一个单词后,帮助他找到出现最多的字母和这 个字母出现的次数。
输入描述
输入一行包含一个单词,单词只由小写英文字母组成。
对于所有的评测用例,输入的单词长度不超过 1000。
输出描述
输出两行,第一行包含一个英文字母,表示单词中出现得最多的字母是哪个。如果有多个字母出现的次数相等,输出字典序最小的那个。
第二行包含一个整数,表示出...
题目描述
数学老师给小明出了一道等差数列求和的题目。但是粗心的小明忘记了一部分的数列,只记得其中N 个整数。
现在给出这N 个整数,小明想知道包含这N 个整数的最短的等差数列有几项?
输入描述
输入的第一行包含一个整数N。
第二行包含N 个整数A1.A2,..., AN。(注意A1<=AN 并不一定是按等差数列中的顺序给出)
2<=N<=100000,0<=Ai<=10^9
输出描述
输出一个整数表示答案。
输入输出样例
输入
5
2 6 4 10 20
输出
10
思路
第一遍做的时候,我的思路是要求出公差,就要求出相邻两项的公约数,但是...
题目描述
思路
先求出分母
对分数进行通分,用第二十项的分母除每项的分母得到的数×该项分子即为进行通分,将通分后的每项分子相加,即得到最后的分子
求出分子与分母的最大公因数,本题为1,直接输出分子/分母即可,如不唯一,分子,分母同除最大公因数然后输出即可
代码
#include<stdio.h>
int nm[20];
int main(){
int i,sum=1,he=0;
nm[1]=1;
for(i=2;i<=20;i++){
sum*=2;
nm[i]=sum;
}
for(i=1;i<=20;i++){
he+=nm[20]/n...
题目链接:https://www.lanqiao.cn/problems/1452/learning/;
看题目数据10^18是很吓人的,我以为得用高精度..........;
不!实则不然!long long 就可以过
然后这个题就变成模拟了:
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long day = 24*60*60*1000;
long long time;
ios::sync_with_stdio(false);
cin >> time;
time...
题目描述
思路
借鉴了思路
按天递增,当天数超过本月最大天数时,月数加1,天数变为1,当月数超过12时,年数加1,月数变为1,星期也要递增且记得模7
#include<stdio.h>
int runyear(int year){//判断是否为闰年
if(year%4==0 && year%100!=0 ||year%400==0)return 1;
else return 0;
}
int main(){
int day[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int tian=1,year=20...
题目描述
查看题目
思路
先求出2021041820210418的因子,将其存储在数组中,求出一个的时候,另一个也就能知道了,当该因子为2021041820210418的平方根时,要注意,不用添加另一个因子
遍历因子数组,当三个数乘积为2021041820210418时,count加1
注意因子数组的类型一定为ll类型,int类型结果会错!!!
代码
#include<stdio.h>
long long int res[200];//!!注意类型,int型会错,ll型才行
int cnt=0;
int count;
int main(){
long long int n...
提示:未通过全部数据,思路仅供参考,后续要记得完善
题目描述
输入输出样例
输入
1 1
1 2 3
输出
4
思路
分情况讨论,合并相同计算情况的方法,可以分四种,如下图所示
从上图看出分两种情况即可:只有+;剩余所有情况
举例说明上述第二种情况:
输入数据全部为正数,符号只有-:1 2 3 得到最大值的表达式为:2-(1-3)=>2-1+3 =>3-1+2
输入数据全部为正数,符号有+有-:1 2 3 4,1个+,2个-,最大值:4-(1-3)+2 =》4-1+3+2
输入数据全部为负数,符号只有-:-1 -2 -3,最大值:-1-(-2)-(-3)=>...
#include<stdio.h>
#include<Windows.h>
#include<time.h>
struct clock {
int hour;
int minute;
int second;
};
typedef struct clock CLOCK;
int main()
{
CLOCK t = { 0,0,0 };
int n = 100, i = 0;
char c;
time_t now;
struct tm local;
while (1)
{
time(&now);
localtime...
题目描述
一点思考
C语言中没有保留到小数点多少位的函数或者方法,所以要换一种思路
可以将分子扩大到题目要求多一位的位数,再求分数的值,然后四舍五入舍掉最后一位,与题目要求的结果相减,结果为0,则满足条件,输出即可
代码
#include<stdio.h>
int main(){
int i;
long long res,a=1,b=3,tem;
for(i=1;i<2000;i++){
res=(10000000*a)/b;
if(res%10>4){
res=res/10+1;
}
else res=r...
文章链接:https://www.dianjilingqu.com/51576.html
本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:saisai#email.cn,感谢支持理解。