菜鸟杯考砸了(ノಥ益ಥ),我竟然只写了3题,学校网不好我先做三题,等了一小时,然后断断续续的做了四题,最后一小时交上去全错了,又来不及改了,心态炸裂。我觉得应该是粗心了,加上网站搞人心态......
我现在觉得我是铁废物
首先是大数相乘:
描述
今年EDG在11月6号参加世界数学竞赛总决赛,一不小心就拿了一个世界冠军,现在好了,上面就有一个调皮的主持人,问了EDG一个世界级难题。
题目是a*b=?
Flandre当时就是???
而jiejie非常猛,一下就算出来了。
Flandre又是???
现在这个难题,需要你这位聪明的大神来拯救Flandre。
格式
输入格式
输入两个数A和B (0 <= A, B <= 1018)
输出格式
输出A*B的值
样例
1 2
样例输出
2
#include<stdio.h>
#include<string.h>
#define N 1000
int main()
{
char a1[N],b1[N];
int a2[N]={0},b2[N]={0},c[N]={0};
int i=0,r=0;
for(i=0;i<1000;i++)
{
a1[i]='0';
b1[i]='0';
}
gets(a1);
gets(b1);
int n1=0,n2=0;
n1=strlen(a1);
n2=strlen(b1);
for(i=0;i<n1;i++)
a2[i]=a1[n1-i-1]-'0';
for(i=0;i<n2;i++)
b2[i]=b1[n2-i-1]-'0';
for(i=0;i<n2;i++)
{
for(r=0;r<n1;r++)
c[i+r]=c[i+r]+a2[r]*b2[i];
}
int n3=n1+n2;
for(i=0;i<n3;i++)
{
if(c[i]>=10)
{
c[i+1]=c[i+1]+c[i]/10;
c[i]=c[i]%10;
}
}
i=i-1;
while(c[i]==0&&i>=0)
i--;
if(i<0)
printf("0");
else
{
for(;i>=0;i--)
printf("%d",c[i]);
}
return 0;
}
答案错误43%,我_(:з」∠)_,在别的网站明明对了啊.....
然后是
描述
lzl的英语水平很烂,但是4级考试近在眼前,所以他去求助他的师傅,他师傅传授给他一招首字母记忆法。下面是他还没有记住的单词:apple, bear, banana, candy, difference, Do, easy, fly, good, home, House, ice-cream, juice, kill, lyy, math, near, open, parent, quit, road, way, zero。
格式
输入格式
输入一串字符串 s, 字母有大写或小写,有数字。(0 <= |s| <= 1000);
(多组输入)大小写可以模糊记忆, eg: C 或 c 都是 candy!
输出格式
1. 如果上面这个字母开头的单词, 数量为1,则输出这个单词。
2.如果上面这个字母开头的单词,数量>1, 则输出'我记得有点模糊'。
3.如果上面这个字母开头的单词, 数量 < 1, 则输出'这个单词我已经记住了'。
4.如果是数字,则输出'这是一个数字 + 值'。
注意输出一个换行。
样例
样例输入
abCD123
666xyz
样例输出
apple
我记得有点模糊
candy
我记得有点模糊
这是一个数字1
这是一个数字2
这是一个数字3
这是一个数字6
这是一个数字6
这是一个数字6
这个单词我已经记住了
这个单词我已经记住了
zero
这一题可惜,是这样的:
Main.c: In function 'main': Main.c:10:8: warning: implicit declaration of function 'strlwr'; did you mean 'strlen'? [-Wimplicit-function-declaration] 10 | strlwr(a); | ^~~~~~ | strlen /usr/bin/ld: /tmp/ccCrB1mD.o: in function `main': Main.c:(.text.startup+0x50): undefined reference to `strlwr' collect2: error: ld returned 1 exit status
学校网站无法识别strlwr函数,一直运行错误。哎.....
这题是转化成小写,然后switch case的。
然后是
描述
牛子爷赚了钱想存进T银行,但是T银行是7进制银行,里面的存款都是用7进制显示的.
牛子爷每次存完钱之后,不知道自己现在在银行的存款是多少
因为他不会10进制转换成7进制。
聪明的你,能帮帮牛子爷嘛?
格式
输入格式
输入一个数T代表有T组测试样例(1<=t<=1000)
第一行是两个正整数n,m(n代表牛子爷存这笔钱之前在T银行的存款(牛子爷在上次在T银行存款时看的),m代表牛子爷要存的钱的数量)
(0<=n<=10^6,0<=m<=10^6)
注意 n是7进制的数,m是10进制的数
输出格式
牛子爷在存完这笔钱之后在T银行的存款
样例
样例输入 Copy
2
10 7
6 10
样例输出 Copy
20
22
提示
在T银行的存款都是用7进制显示
10元存进T银行,你在T银行的存款会加上13(10转换成7进制是13)
牛子爷要存的钱是10进制数
#include<stdio.h>
#include<string.h>
#define N 1000
int q(int);
int z(int);
int main()
{
int n,i=0,a,b,c;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d %d",&a,&b);
c=z(a)+b;
printf("%d\n",q(c));
}
return 0;
}
int q(int a)
{
int b=0,c=10,d=0;
if(a>6)
{
while(a>6)
{
b=a/7*c;
d=d+a%7*c/10;
b=b+d;
a=a/7;
c=c*10;
}
}
else
{
b=a;
}
return b;
}
int z(int a)
{
int b=0,c=7,d=0;
if(a>6)
{
while(a>6)
{
b=a/10*c;
d=d+a%10*c/7;
b=b+d;
a=a/10;
c=c*7;
}
}
else
{
b=a;
}
return b;
}
我错误33%,然后回寝室又敲了一遍,它对了。(●—●)为什么!!!
然后是
描述
有梦想才有希望,有希望才有力量,有力量才有辉煌,让我们高举右手,面对最后100天。
我们庄严宣誓:
自信创造奇迹,拼搏成就梦想!
智慧主宰世界,合作共享成功!
脚踏实地海让路,锲而不舍山移位!
竭尽全力拼过程,问心无愧看结果!
奋战一百天,给父母一个惊喜!
奋战一百天,给学校一个奇迹!
奋战一百天,给未来一片光明!
这是一个梦,但不完全是一个梦。你依稀记得当初宣誓的情景,所以当别人喊出前面一句话时,你会情不自禁的说出后面那句话。
但是我们已经高考完了,所以这个宣誓词与我们没有关系了,我们应该吧目光放得更加长远.
所以你找到了少年中国说,并且和宣誓词一样,当你听到前一句时,你会情不自禁的说出后面那句。
《少年中国说》
今日之责任,不在他人,而全在我少年。
少年智则国智,少年富则国富;
少年强则国强,少年独立则国独立;
少年自由则国自由,少年进步则国进步;
少年胜于欧洲则国胜于欧洲,少年雄于地球则国雄于地球。
红日初升,其道大光。
河出伏流,一泻汪洋。
潜龙腾渊,鳞爪飞扬。
乳虎啸谷,百兽震惶。
鹰隼试翼,风尘吸张。
奇花初胎,矞矞皇皇。
干将发硎,有作其芒。
天戴其苍,地履其黄。
纵有千古,横有八荒。
前途似海,来日方长。
美哉,我少年中国,与天不老!
壮哉,我中国少年,与国无疆!
格式
输入格式
多组输入
每组输入少年中国说的前一句话.(当某一句中有2个逗号时,他输入前面一小句,你需要输出后面两个小句,详情看样例)
输出格式
输出题目给出的输入的后一句。(当某一句中有2个逗号时,他输入前面一小句,你需要输出后面两个小句,详情看样例)
样例
样例输入
今日之责任,
少年智则国智,
少年强则国强,
少年自由则国自由,
少年胜于欧洲则国胜于欧洲,
红日初升,
河出伏流,
潜龙腾渊,
乳虎啸谷,
鹰隼试翼,
奇花初胎,
干将发硎,
天戴其苍,
纵有千古,
前途似海,
美哉,
壮哉,
样例输出
不在他人,而全在我少年。
少年富则国富;
少年独立则国独立;
少年进步则国进步;
少年雄于地球则国雄于地球。
其道大光。
一泻汪洋。
鳞爪飞扬。
百兽震惶。
风尘吸张。
矞矞皇皇。
有作其芒。
地履其黄。
横有八荒。
来日方长。
我少年中国,与天不老!
我中国少年,与国无疆!
典中典,每个人对认为这题很简单,但:
#include<stdio.h>
#include<string.h>
int main()
{
char a[100];
char c;
int n,i;
while(1)
{
gets(a);
n=strlen(a);
/*switch(a[2])
{
case '之':printf("不在他人,而全在我少年。");break;
default:printf("%d\n",n);
}*/
for(i=0;i<n;i++)
printf("%c ",a[i]);
}
return 0;
}
有新手知道这段代码的输入”今日之责任,“后输出结果吗?
结果:
今日之责任,
????????????
这题我打算用switch case例出来的。
然后我很好奇,又试了一下:
#include<stdio.h>
#include<string.h>
int main()
{
char a[100];
char c;
int n,i;
while(1)
{
gets(a);
n=strlen(a);
/*switch(a[2])
{
case '之':printf("不在他人,而全在我少年。");break;
default:printf("%d\n",n);
}*/
printf("%d",n);
}
return 0;
}
结果是12;
中文占了2个数组的位置,我又尝试了一种方法:
#include<stdio.h>
#include<string.h>
int main()
{
char a[100];
char c;
int n,i;
while(1)
{
gets(a);
n=strlen(a);
/*switch(a[2])
{
case '之':printf("不在他人,而全在我少年。");break;
default:printf("%d\n",n);
}*/
puts(a);
}
return 0;
}
输出是:
今日之责任,
今日之责任,
其实挺有趣的,这题switch函数无能为力。
不知不觉快2点了啊,明天再学学结构体,还是有一些不熟悉,这次考试13题还有5题题目都没有看,哎。。网不好看不了题是一方面,另一方面还是因为太菜了,最后网好的一小时存下的4题都是有一些错误的,手忙脚乱的改代码去了,哎。还要继续努力才行呀。