2012-4-14 中南大学第六届大学生程序设计竞赛(Semilive)之水题经历
进入8-203,看见zzy大大和boge在码题,应对中南网络赛,只好先放下自己现在的工作,去水一把,果然够水,囧~~
这是第一次在csu oj上A题~~ 排名第83位
第一题:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1160
十进制转化十六进制的问题,挺新颖的~~我竟然还是采用十进制转换为二进制的老办法,汗,竟没发现可以通过系统进行转换,直接用%x转换,汗~~
贴上第一题的代码:#include<stdio.h>
#include<string.h>
int
main()
{
char
a[8];
unsigned
int
i,num,ji;
while
(
scanf
(
"%u"
,&num)!=EOF){
memset
(a,
'0'
,
sizeof
(a));
i=7;
while
(num!=0){
ji=num%16;
num=num/16;
if
(ji<10) a[i]=ji+
'0'
;
else
switch
(ji)
{
case
10: a[i]=
'A'
;
break
;
case
11: a[i]=
'B'
;
break
;
case
12: a[i]=
'C'
;
break
;
case
13: a[i]=
'D'
;
break
;
case
14: a[i]=
'E'
;
break
;
case
15: a[i]=
'F'
;
break
;
}
i--;
}
printf
(
"0x"
);
for
(i=0;i<8;i++)
printf
(
"%c"
,a[i]);
printf
(
"\n"
);
}
}
/**************************************************************
Problem: 1160
User: 1115332213
Language: C
Result: Accepted
Time:24 ms
Memory:740 kb
****************************************************************/
boge给的简单的程序
#include<iostream>
using namespace std;
int main()
{
unsigned int a;
while(1){
scanf( "%u",&a );
printf( "0x%08X\n",a );
}
return 0;
}
汗,两者一对比发现自己还有很长的路要走~~
第二题~~剧水 http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1161
#include<stdio.h>
#include<stdio.h>
int
a[1000010],b[1000010];
int
c[1000010];
int
main()
{
int
len,i;
scanf
(
"%d"
,&len);
for
(i=0;i<=len+5;i++)
c[i]=0;
for
(i=len-1;i>=0;i--)
{
scanf
(
"%d %d"
,&a[i],&b[i]);
}
for
(i=0;i<len;i++)
{
c[i]+=(a[i]+b[i]);
if
(c[i]>9){c[i]-=10;c[i+1]+=1;}
}
i=len-1;
for
(;i>=0;i--)
printf
(
"%d"
,c[i]);
}
/**************************************************************
Problem: 1161
User: 1115332213
Language: C
Result: Accepted
Time:452 ms
Memory:12456 kb
****************************************************************/