=-=最近简直忙疯了.....两眼泪汪汪的...一个星期又磨磨蹭蹭的刷了一套

1.java_c

题1  Java vs C++
【问题描述】
Java和C++两种语言的辩手都可以相互争论数小时去证明他们的编程语言是最好的。用Java的人将告诉人们,他们的程序更加清楚且不容易犯错,而用C++的人会嘲笑他们没有能举出有代表性的实例来证明他们的观点,或者告诉他们Java的程序运行速度慢而且源代码太长。
另一个问题是,用Java和C++的人永远无法在标识符的命名上取得共识。在Java中,由多个单词组成的标识符的命名规则如下:第一个单词是以小写字母开头,接下来的每一个单词以大写字母开头,分隔符是不允许使用的。其他所有的字母都是小写的。下面举出一些例子:javaIdentifier,longAndMnemonicIdentifier,name,nEERC。
而在C++中,人们只用小写字母来命名标识符。他们运用下划线“_”来分隔单词。下面举出一些例子:c_identifier,long_and_mnemonic_identifier,name(当只有1个单词时,用Java和C++的人是统一的),n_e_e_r_c。
你需要写一个程序来相互翻译Java和C++的程序。当然了,翻译后的标识符必须符合它的命名规则,否则人们不会认同你的翻译。
给你一个标识符,它可能会是Java或者C++标识符中的一种,而你需要将其翻译成另一种。如果这个标识符既不是Java标识符也不是C++标识符,你的程序需要报告错误。翻译必须符合规范,所以就需要改变字母大小写或者添加、删除下划线。
【输入格式】
输入文件1行,包含一个标识符。标识符由大小写字母和下划线组成,长度不会超过100。
【输出格式】
如果输入的是Java标识符,输出应该为C++标识符;反之亦然。如果输入既不是Java标识符,也不是C++标识符,则输出“Error!”。
【输入样例1】
long_and_mnemonic_identifier
【输出样例1】
longAndMnemonicIdentifier 【输入样例2】
anotherExample
【输出样例2】
another_example 【输入样例3】
i
【输出样例3】
i 【输入样例4】
bad_Style
【输出样例4】
Error!

  java_c 这一题主要是考字符串的处理,写的时候还是要很细心的,首先是c++要手打insert.delete,表示很忧伤;一些小细节要考虑到,就比如首字母如果是大写或是_,输出error

代码

#include<cstdio>
#include<cstring>
using namespace std;
char s[200];
bool f[3];
int i,j,l;
int main(){
freopen("java_c.in","r",stdin);
freopen("java_c.out","w",stdout);
memset(f,false,sizeof(f));
scanf("%s",s);
l=strlen(s);
for(i=0;i<l;i++){
if(s[0]>=65 && s[0]<97){
f[1]=true;f[2]=true;
break;
}
if(s[0]=='_'){
f[1]=true;f[2]=true;
break;
}
if(s[i]>=65 && s[i]<97 && s[i]!=95){
l++;
f[2]=true;
for(j=l;j>i;j--) s[j]=s[j-1];
s[i+1]=s[i]+32;
s[i]='_';
i++;
}
if(s[i]=='_'){
f[1]=true;
if(s[i+1]>=97){
for(j=i;j<l-1;j++) s[j]=s[j+1];
s[i]=s[i]-32;
l--;
}
else{
f[2]=true;
break;
}}}
if(f[1] && f[2]) printf("Error!");
else for(i=0;i<l;i++) printf("%c",s[i]); return 0;
}

  2.calculate

题2  计算概率
【问题描述】
小明有n个长度不一的小木棍,这些木棍的长度都是正整数。小明的父亲想和小明做一个游戏。他规定一个整数长度l,让小明闭着眼睛从n个木棍中随便拿出两个。如果两个木棍的长度总和小于等于l,则小明胜,否则小明的父亲胜。小明想知道他胜出的概率究竟有多大。
【输入说明】
输入包含两行。第一行为两个整数n和l,其中n和l都不超过100000。第二行包含n个整数,分别为n个木棍的长度。
【输出说明】
输出包含一个实数,小明胜出的概率,保留两位小数。
【输入样例】calculate.in
4 5
1 2 3 4
【输出样例】calculate.out
0.67

  一开始打了个暴力,居然骗了个80,surprise!

之后看了题解说是要用dp.....但是看了某个大神的代码之后,发现可以用排列组合轻松搞定!!

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
long long a[1000001],k,ans=0,n,l;
int main(){
//freopen("calculate.in","r",stdin);freopen("calculate.out","w",stdout);
scanf("%d%d",&n,&l);
for(int i=0;i<n;i++){
scanf("%d",&k);
a[k]++;
}
int h=1,r=l-1,s=0;
while(r>=h){
s+=a[h];
ans+=a[r]*s;
r--;
h++;
}
if(h==r) s+=a[h];
ans+=s*(s-1)/2;
n=n*(n-1)/2;
printf("%.2f",(double)ans/n);
return 0;
}

  3.recruitment

题3  袁绍的刁难

【问题描述】
  黄巾之乱后,郭嘉到了袁绍的统辖地区,袁绍想给郭嘉一个下马威,当时正值他招募将领的时候,于是乎,袁绍就让郭嘉去替他招募将领。
  这时候有很多很多的将领到袁绍处报到(别人家底厚,四世三公哪~~),每个将领的编号依次为1、2、3、……,第i个将领的武力值为3^(i-1)。
  袁绍需要我们的郭嘉招纳任意个将领,而郭嘉选中的将领有一个“总武力值”为各个将领的武力值之和。例如:郭嘉这一次招募了第一个将领和第三个将领,那么“总武力值”为1+9=10。
  袁绍想知道,他可以获得的第k小的“总武力值”是多少,请你帮助我们的郭嘉告诉袁绍这个第k小的“总武力值”。
  从文件中读入k,输出郭嘉能够获得的,第k小的“总武力值”。 【输入格式】
  输入文件的第一行为n(n≤100),表示测试数据的组数。
  以下n行,每行为一个k值。 【输出格式】
  输出包含n行,每行输出一个对应的结果。 【输入样例】
  1
  7 【输出样例】
  13 【样例说明】
  郭嘉能够拿到的总武力值从小到大为1、3、4、9、10、12、13……所以第7小的总武力值是13。
  对于50%的输入文件,有k≤5000。
对于100%的输入文件,有k≤2^31-1。
  表示打这一题打得无限忧伤,首先是一个周末都没有时候调它就很不开森了,没想到还因为最后输出的没有开lld,无限wa得我飙泪
咳咳.....一开始看到这一题的时候真是一点想法都没有,之前貌似没有打过这样的题目,之后40表示可以用进制转化,但之后发现用2进制并不需要倒着输出,想想2就可以知道了
#include<cstdio>
#include<cstring>
using namespace std;
int i=0;
long long f[100000];
void exchange(int x){
int r;
while(x>0){
r=x%2;
x/=2;
f[i]=r;
i++;
}
}
int main(){
freopen("recruitment.in","r",stdin);freopen("recruitment.out","w",stdout);
long long k,sum,ans;
long long n; scanf("%d",&n);
for(int j=0;j<n;j++){
memset(f,0,sizeof(f));
sum=0;ans=1;i=0;
scanf("%d",&k);
exchange(k);
for(int l=0;l<=i;l++){ if(f[l]==1){
sum+=ans; }ans*=3;
}
printf("%lld\n",sum);
}
return 0;
}

  

 

2013.4.A的更多相关文章

  1. 2013 Asia Changsha Regional Contest---Josephina and RPG(DP)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=4800 Problem Description A role-playing game (RPG and ...

  2. SharePoint 2013: A feature with ID has already been installed in this farm

    使用Visual Studio 2013创建一个可视web 部件,当右击项目选择"部署"时报错: "Error occurred in deployment step ' ...

  3. Visual Studio 2013 添加一般应用程序(.ashx)文件到SharePoint项目

    默认,在用vs2013开发SharePoint项目时,vs没有提供一般应用程序(.ashx)的项目模板,本文解决此问题. 以管理员身份启动vs2013,创建一个"SharePoint 201 ...

  4. SharePoint 2013 create workflow by SharePoint Designer 2013

    这篇文章主要基于上一篇http://www.cnblogs.com/qindy/p/6242714.html的基础上,create a sample workflow by SharePoint De ...

  5. Install and Configure SharePoint 2013 Workflow

    这篇文章主要briefly introduce the Install and configure SharePoint 2013 Workflow. Microsoft 推出了新的Workflow ...

  6. SharePoint 2013 configure and publish infopth

    This article will simply descript how to configure and publish a InfoPath step by step. Note: To con ...

  7. TFS 2013 培训视频

    最近给某企业培训了完整的 TFS 2013 系列课程,一共四天. 下面是该课程的内容安排: 项目管理     建立项目     成员的维护     Backlog 定义     任务拆分     迭代 ...

  8. Visual Studio 2013 Ultimate因为CodeLens功能导致Microsoft.Alm.Shared.Remoting.RemoteContainer.dll高CPU占用率的折中解决方案

    1.为什么Microsoft.Alm.Shared.Remoting.RemoteContainer.dll的CPU占用率以及内存使用率会那么高? 在Visual Studio 2013 Ultima ...

  9. 沙盒解决方案解决SharePoint 2013 以其他身份登陆的问题

    众所周知,SharePoint 2013没有像SharePoint 2010那样有一个叫"以其他身份登录"的菜单项. 当然解决方案也很多,比如你可以直接修改Welcome.ascx ...

  10. 实现一个基于 SharePoint 2013 的 Timecard 应用(中)

    门户视图 随着 Timecard 列表的增多,如何查找和管理这许多的 Timecard 也就成了问题.尤其对于团队经理而言,他除了自己填写的 Timecard,还要审核团队成员的 Timecard 任 ...

随机推荐

  1. SSIS从理论到实战,再到应用(2)----SSIS包的控制流

    原文:SSIS从理论到实战,再到应用(2)----SSIS包的控制流 前文回顾: SSIS从理论到实战,再到应用(1)----创建自己的第一个包 上次说到创建了自己的第一个包,完成了简单的数据从数据库 ...

  2. Spring搭建MVC WEB项目[转]

    原文链接:http://blog.csdn.net/initphp/article/details/8208349 1.创建一个web项目 2.假设,我们已经安装完毕Spring所需要的依赖包,以及一 ...

  3. HttpGet 请求

    import java.net.HttpURLConnection; import java.text.SimpleDateFormat; import java.util.Calendar; imp ...

  4. SettingsProvider该CRUD

    转载请注明出处:http://blog.csdn.net/droyon/article/details/35558697 什么时候delete要么update时间.需要清空缓存并重新加载数据. 1.i ...

  5. java_代码注释风格

    <?xml version="1.0" encoding="UTF-8" standalone="no"?><templa ...

  6. SQL 把表中字段存储的逗号隔开内容转换成列表形式

    原文:[原创]SQL 把表中字段存储的逗号隔开内容转换成列表形式 我们日常开发中,不管是表设计问题抑或是其他什么原因,或多或少都会遇到一张表中有一个字段存储的内容是用逗号隔开的列表. 具体效果如下图: ...

  7. 教你一步一步部署.net免费空间OpenShift系列之四------绑定域名、使用CDN加速

    很抱歉这几天没有时间,有人问我怎么绑定域名的问题也没有答复,下面进入正题,惊闻ASP.Net要开源了,难道.Net春天要来了?不废话,上回书说,部署完毕ASP.Net网站后,直接访问不能访问(嗯,众所 ...

  8. jquery 直接调用 wcf,面向服务的SOA架构 ( 第二天)

    在前面的基础上,我们来开始第二天编写 客户端 的东西,不过讲之前,我想告诉大家的是: 这个简单的SOA的架构,我们直接通过wcf 调用到 后台的方法, 而中间没有使用 C#代码,大大减少我们客户端的代 ...

  9. C# 打开指定文件或网址

    System.Diagnostics.Process.Start的妙用: 文件夹打开时自动选中一个文件,比如自动选中此目录下的指定文件方法: Process.Start("Explorer& ...

  10. SQL Server日志文件庞大收缩方法(实测好用)

    原文:SQL Server日志文件庞大收缩方法(实测好用) 这两个命令连续执行,间隔时间越少越明显(可多次运行),直到达到效果 --截断 BACKUP LOG CloudMonitor TO DISK ...