题目:

思路分析:
格式化输入实现就行
然后可char存储直接-'0'转化为数字
代码实现:
/*
*@Author: GuoJinlong
*@Language: C++
*/
//#include <bits/stdc++.h>
/*
* __----~~~~~~~~~~~------___
* . . ~~//====...... __--~ ~~
* -. \_|// |||\\ ~~~~~~::::... /~
* ___-==_ _-~o~ \/ ||| \\ _/~~-
* __---~~~.==~||\=_ -_--~/_-~|- |\\ \\ _/~
* _-~~ .=~ | \\-_ '-~7 /- / || \ /
* .~ .~ | \\ -_ / /- / || \ /
* / ____ / | \\ ~-_/ /|- _/ .|| \ /
* |~~ ~~|--~~~~--_ \ ~==-/ | \~--===~~ .\
* ' ~-| /| |-~\~~ __--~~
* |-~~-_/ | | ~\_ _-~ /\
* / \ \__ \/~ \__
* _--~ _/ | .-~~____--~-/ ~~==.
* ((->/~ '.|||' -_| ~~-/ , . _||
* -_ ~\ ~~---l__i__i__i--~~_/
* _-~-__ ~) \--______________--~~
* //.-~~~-~_--~- |-------~~~~~~~~
* //.-~~~--\
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*
* 神兽保佑 永无BUG
*/
const int MAX=100010;
const int mod=11;
int main(){
int a,b,c;
char d;
scanf("%d-%d-%d-%c",&a,&b,&c,&d);
int ans=0;
int b1,b2,b3;
b1=b/100;
b3=b%10;
b2=(b-b1*100)/10;
int c1,c2,c3,c4,c5;
c1=c/10000;
c5=c%10;
c2=(c-c1*10000)/1000;
c3=(c-c1*10000-c2*1000)/100;
c4=(c-c1*10000-c2*1000-c3*100)/10;
ans=(a+b1*2+b2*3+b3*4+c1*5+c2*6+c3*7+c4*8+c5*9)%mod;
if(ans==10){
if(d=='X'){
cout<<"Right";
}
else cout<<a<<"-"<<b<<"-"<<c<<"-"<<"X";
}
else if(ans==(d-'0')){
cout<<"Right";
}
else cout<<a<<"-"<<b<<"-"<<c<<"-"<<ans;
}
该博客主要展示了一段C++代码,用于处理日期格式的输入并进行特定的数学运算。通过读取年、月、日和一个字符,代码计算出一个模运算结果。如果结果与字符对应的数字相等或为10,并且字符为'X',则输出Right;否则,输出结果或'X'。博客中还包含了一些程序员的趣味元素。
2688

被折叠的 条评论
为什么被折叠?



