第三届蓝桥杯C++本科B组决赛解题报告(更新中)
2013-07-04 15:20
429 查看
<1>星期几
9
<3>拼音字母
方法1
方法2
9
package JiaNan; import java.util.Calendar; import java.util.GregorianCalendar; public class XingQiJi { static Calendar c = new GregorianCalendar(1949,10-1,1); static int num = 0; public static void main(String args[]) { while(c.get(Calendar.YEAR) <= 2012) { c.add(Calendar.YEAR, 1); if(c.get(Calendar.DAY_OF_WEEK) == 1) { num++; } } System.out.println(num); } } /* 9 小结: 星期日:1 星期一:2 星期二:3 星期三:4 星期四:5 星期五:6 星期六:7 */
<3>拼音字母
方法1
package JiaNan; import java.nio.charset.Charset; public class PinYin { static char[] strPinYin = {'a','b','c','d','e','f','g','h','j','k','l','m','n','o','p','q','r','s','t','w','x','y','z'}; static int[] iRanger = {0xB0A1,0xB0C5,0xB2C1,0xB4EE,0xB6EA,0xB7A2,0xB8C1,0xB9FE,0xBBF7,0xBFA6,0xC0AC,0xC2E8,0xC4C3,0xC5B6,0xC5BE,0xC6DA,0xC8BB,0xC8F6,0xCBFA,0xCDDA,0xCEF4,0xD1B9,0xD4D1,0xf7fe}; static String GetPinYin(String strIn) { String resultString = ""; for(int i = 0;i < strIn.length();i++) { String curString = "" + strIn.charAt(i); byte[] bt = curString.getBytes(Charset.forName("GB2312")); int iFirstByte = bt[0]<<8 & 0xff00; int iSecondByte = bt[1] & 0xff; int iFirstLetter = iFirstByte + iSecondByte; for(int j = 0; j < iRanger.length-1;j++) { int iRangerPre = iRanger[j]; int iRangerEnd = iRanger[j+1]; if((iFirstLetter >= iRangerPre) && (iFirstLetter <= iRangerEnd)) { resultString += strPinYin[j]; break; } } } return resultString; } public static void main(String[] args) { String resultString = GetPinYin("好好学习天天向上为国争光我是农大人我爱农大"); System.out.println(resultString); } } /* hhxxttxswgzgwsndrwand */
方法2
#include <iostream> #include <string> #include <string.h> #include <cstdio> using namespace std; char a[23][3]={"啊","芭","擦","搭","蛾","发","噶","哈","击","喀","垃","妈","拿","哦","啪","期","然","撒","塌","挖","昔","压","匝"}; char ax[23]={'A','B','C','D','E','F','G','H','J','K','L','M','N','O','P','Q','R','S','T','W','X','Y','Z'}; string solve(string ch) { int i,j; string ans; char b[3]; b[2]='\0'; for(i=0;ch[i]!='\0';i+=2) { b[0]=ch[i]; b[1]=ch[i+1]; for(j=0;j<22;j++)//这里注意 小于 下标22 if(strcmp(b,a[j])>=0&&strcmp(b,a[j+1])<0) break; ans+=ax[j];//当j=22时,说明这个字是z开头的 } return ans; } int main() { string b; string singer; int n,i; cin>>n; for(i=0;i<n;i++) { cin>>b; singer=solve(b); cout<<singer<<endl; } return 0; } /* 1 我是农大人我爱农大 WSNDRWAND */
相关文章推荐
- 第三届蓝桥杯C++本科B组决赛解题报告(更新中)
- 第四届蓝桥杯C++本科B组决赛解题报告
- 第五届蓝桥杯软件大赛C/C++本科B组决赛解题报告
- 第二届蓝桥杯C++本科B组决赛解题报告
- 第四届蓝桥杯C++本科B组预赛解题报告
- 运行时间排列第四届蓝桥杯C++本科B组解题报告
- 2014年第五届蓝桥杯预赛 C/C++本科B组 快速解题思路及报告(完整版,4.9修订)
- 2014年蓝桥杯预赛 C/C++本科B组 解题报告 史丰收速算
- 2014年蓝桥杯预赛 C/C++本科B组 解题报告 打印图形
- 2013蓝桥杯预赛C/C++本科B组解题报告
- 2014 第五届蓝桥杯预赛c/c++本科B组 解题报告
- 2014年蓝桥杯预赛 C/C++本科A组 解题报告 史丰收速算
- 2014年蓝桥杯预赛 C/C++本科B组 解题报告 (本人写的)
- 蓝桥杯2012年第三届决赛C_C++程序设计本科B组
- 第五届蓝桥杯C/C++本科A组初赛波动数列解题报告
- 第四届蓝桥杯C++本科B组预赛解题报告
- 第五届蓝桥杯软件大赛C/C++本科B组解题报告
- 第二届蓝桥杯C++本科B组初赛解题报告
- 第三届蓝桥杯java本科解题报告
- 2013第四届 蓝桥杯c/c++B组预赛 解题报告(还在更新中。。。。。)