码迷,mamicode.com
首页 > 其他好文 > 详细

2016.4.9

时间:2016-04-10 01:12:36      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:

今天是4月9号,一天都窝在寝室里面,早上看了逆风笑的视频,笑笑真是高产如母猪哇(笑)。他又做了很多游戏解说,因为喜欢,所以能一下子做出那么多吧。

还听了好多歌,李纹的,都挺好听的。

主要是一天没吃饭,下午就去刷hdu的steps去了,果然是太弱了。

4月16号就要校赛网络赛了,就是下周六,然后下下周日就是现场赛了。

想起来陕师大的那次,真是非常后怕啊!

不过今天刷题还是有些收获的,希望这个月可以坚持,以后也要坚持,算是入门!

今天学习的一些知识:

1.排序

 (1)使用strtok分割一个字符串

 这个函数的头文件是string.h,调用方式是p=strtok(a,"5");//a是字符串,引号里面的是分隔符

(2)使用atoi(alphanumeric to integer)函数让一个字符串转化为一个整型,这个函数的头文件是stdlib.h

具体用法参见下面的代码啦~

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
using namespace std;
int main()
{
char s[1001];
char *p;
int num[1000];

while(~scanf("%s",s))
{
int cnt=0;
memset(num,0,sizeof(num));
p=strtok(s,"5");
num[cnt++]=atoi(p);
while(p!=NULL)
{
num[cnt++]=atoi(p);
p=strtok(NULL,"5");
}
sort(num,num+cnt);
for(int i=0;i<cnt-2;i++)
{
printf("%d ",num[i]);
}
printf("%d\n",num[cnt-1]);
}
return 0;
}

 

2.Rank

这个很有指导性意义啊,因为做的时候竟然卡了很久很久,主要是读入的时候,方法也要优化嘤嘤。

20070101
20070102 100
20070101 33
20070103 22
20070106 33
0 0
输出 2
看这个样例,一般我之前的做法是用一个结构体存储,但是~~用一个一维数组存储需要排序的分数就可以了.
读入的时候
while(~scanf("%d",&Jack)
{
  int a,b;
  while(~scanf("%d%d",&a,&b))
    {
      if(a==0&&b==0) break;
      ……
    }
}
找到与学号匹配的分数,然后从头与它比较一下大小就可以找出名次了。

3.A+Bcoming
读入十六进制数,直接用%x就好了,大小写都支持,不用自己再去写转化进制的函数了。

4.decimal system就是自己写一个进制转换的函数
还有读入的时候 43(8)
用 scanf("%d(%d)",&a,&b);
写一个其他进制数转换为十进制数的函数
int power(int a,int n)
{
  int ans=1;
  for(int i=0;i<n;i++)
    ans*=a;
return ans;
}
int change(int a,int b)
{
  int ans=0;
  for(int i=0;a;i++)
   {
    ans+=a%10*power(b,i);
    a/=10;
   }
  return ans;
}
5.Vowel Counting(元音字母计数)
这个主要就是大小写转化
在ctype.h里面有函数toupper(小写字母转化为大写字母)和tolower(将大写字母转化为小写字母)
嗯……就没什么了。。
6,rightmost digit
问N^N最后一位是什么,这个就是找规律了。
0:0
1:1
2:4 6
3:7 3
4:6
5:5
6:6
7:9 3 1 7
8:4 2 6 8
9:9
然后用余数找对应的那一个

    






 

2016.4.9

标签:

原文地址:http://www.cnblogs.com/liuhanx1/p/5373163.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!