你的飞碟在这儿Your Ride Is Here(难度:入门难度)

题目链接

题目大意

emmmm 输入两个字符串,问他们每个字母的asco码相乘后字符串是否相等。

思路

一道水题?(雾)

错误代码:

#include<cstdio>
#include<cstring>
using namespace std;
char s1[10],s2[10];
int main()
{
scanf(" %s %s", s1+1,s2+1);
int len1=strlen(s1+1),len2=strlen(s2+1);
int ans1=1,ans2=1;
for(int i=1;i<=len1;i++)
ans1*=(s1[i]-'A'+1)%47;
for(int i=1;i<=len2;i++)
ans2*=(s2[i]-'A'+1)%47;
if(ans1==ans2)
printf("GO");
else
printf("STAY");
return 0;
}

注意ans1和ans2最后没有%47,所以最后的答案全部输出STAY,50分。

代码

#include<cstdio>
#include<cstring>
using namespace std;
char s1[10],s2[10];
int main()
{
scanf(" %s %s", s1+1,s2+1);
int len1=strlen(s1+1),len2=strlen(s2+1);
int ans1=1,ans2=1;
for(int i=1;i<=len1;i++)
ans1*=((s1[i]-64)%47);
for(int i=1;i<=len2;i++)
ans2*=((s2[i]-64)%47);
ans1%=47;
ans2%=47;
if(ans1==ans2)
printf("GO");
else
printf("STAY");
return 0;
}

贪婪的送礼者Greedy Gift Givers(难度:普及-)

题目链接

题目大意

在一个聚会上,人们互相赠送钱,问聚会结束后每个人分别少了多少钱或多了多少钱。

思路

边读入边记录每个人的钱数,用结构体表示每个人的名字和他的钱数。模拟。

错误代码:


代码

#include<cstdio>
#include<cstring>
using namespace std;
int n;
struct node{
char name[20];
int sum;
}student[20];
int main()
{
scanf("%d", &n);
for(int i=1;i<=n;i++)
scanf(" %s", student[i].name);
for(int i=1;i<=n;i++)
{
char s[20];
int idx,mon,cnt,mon_aq,mon_af,idx1;
scanf(" %s", s);
for(int j=1;j<=n;j++)
if(strcmp(s,student[j].name)==0)
{
idx=j;
break;
}
scanf("%d%d", &mon, &cnt);
if(cnt==0)
continue;
mon_aq=mon/cnt;
mon_af=mon_aq*cnt;
student[idx].sum-=mon_af;
for(int j=1;j<=cnt;j++)
{
scanf(" %s", s);
for(int k=1;k<=n;k++)
if(strcmp(s,student[k].name)==0)
{
idx1=k;
break;
}
student[idx1].sum+=mon_aq;
}
}
for(int i=1;i<=n;i++)
printf("%s %d\n", student[i].name,student[i].sum);
}

黑色星期五Friday the Thirteenth(难度:普及-)

题目链接

题目大意

从1900年到1900+n-1的时候每个月的13号是星期几。最后输出7个数,表示星期几

思路

直接通过每个月分的天数来统计即可。

错误代码:


代码

#include<cstdio>
using namespace std;
int n,last=3;
int month[12]={31,31,28,31,30,31,30,31,31,30,31,30};
int ans[7];
int main()
{
scanf("%d", &n);
for(int i=1900;i<=1899+n;i++)
{
if(i%400==0 || (i%100!=0 && i%4==0))
month[2]=29;
for(int j=0;j<12;j++)
{
last=(last+month[j])%7;
ans[last]++;
}
month[2]=28;
}
for(int i=0;i<7;i++)
printf("%d ", ans[(i+6)%7]);
return 0;
}

坏掉的项链Broken Necklace(难度:普及-)

题目链接

题目大意

从项链的两边开始收集同颜色的珠子直到你遇到一个不同的颜色珠子,在另一端做同样的事,问最多收多少珠子。

思路

把输入的字符串复制两边来模拟一个环形,然后枚举每个点。

错误代码:


代码

#include<cstdio>
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
int n;
string s;
int calc(int idx)
{
int ans=0;
char a1=s[idx];
char a2=s[idx+1];
for(int i=idx;;i--)
{
if(s[i]==a1 || s[i]=='w')
ans++;
else
break;
}
for(int i=idx+1;;i++)
{
if(s[i]==a2 || s[i]=='w')
ans++;
else
break;
}
return ans;
}
int main()
{
scanf("%d", &n);
cin>>s;
s=s+s+s;
int ans=0;
for(int i=n;i<2*n;i++)
{
if(s[i]==s[i+1])
continue;
if(s[i]=='w')
{
s[i]='r';
ans=max(ans,calc(i));
s[i]='b';
ans=max(ans,calc(i));
s[i]='w';
}
ans=max(ans,calc(i));
}
ans=min(ans,n);
if(ans==0)
ans=n;
printf("%d", ans);
return 0;
}

【usaco】1.1的更多相关文章

  1. POJ 1986 Distance Queries / UESTC 256 Distance Queries / CJOJ 1129 【USACO】距离咨询(最近公共祖先)

    POJ 1986 Distance Queries / UESTC 256 Distance Queries / CJOJ 1129 [USACO]距离咨询(最近公共祖先) Description F ...

  2. 1642: 【USACO】Payback(还债)

    1642: [USACO]Payback(还债) 时间限制: 1 Sec 内存限制: 64 MB 提交: 190 解决: 95 [提交] [状态] [讨论版] [命题人:外部导入] 题目描述 &quo ...

  3. 1519: 【USACO】超级书架

    1519: [USACO]超级书架 时间限制: 1 Sec 内存限制: 64 MB 提交: 1735 解决: 891 [提交] [状态] [讨论版] [命题人:外部导入] 题目描述 Farmer Jo ...

  4. Java实现【USACO】1.1.2 贪婪的礼物送礼者 Greedy Gift Givers

    [USACO]1.1.2 贪婪的礼物送礼者 Greedy Gift Givers 题目描述 对于一群要互送礼物的朋友,你要确定每个人送出的礼物比收到的多多少(and vice versa for th ...

  5. 【CPLUSOJ】【USACO】【差分约束】排队(layout)

    [题目描述] Robin喜欢将他的奶牛们排成一队.假设他有N头奶牛,编号为1至N.这些奶牛按照编号大小排列,并且由于它们都很想早点吃饭,于是就很可能出现多头奶牛挤在同一位置的情况(也就是说,如果我们认 ...

  6. 【USACO】Dining

    [题目链接] [JZXX]点击打开链接 [caioj]点击打开链接 [算法] 拆点+网络流 [代码] #include<bits/stdc++.h> using namespace std ...

  7. 【USACO】Optimal Milking

    题目链接 :        [POJ]点击打开链接        [caioj]点击打开链接 算法 : 1:跑一遍弗洛伊德,求出点与点之间的最短路径 2:二分答案,二分”最大值最小“ 3.1:建边,将 ...

  8. 【USACO】 Balanced Photo

    [题目链接] 点击打开链接 [算法] 树状数组 [代码] #include<bits/stdc++.h> using namespace std; int i,N,ans,l1,l2; ] ...

  9. 【USACO】 Balanced Lineup

    [题目链接] 点击打开链接 [算法] 这是一道经典的最值查询(RMQ)问题. 我们首先想到线段树.但有没有更快的方法呢?对于这类问题,我们可以用ST表(稀疏表)算法求解. 稀疏表算法.其实也是一种动态 ...

  10. 【USACO】The Cow Prom

    [题目链接] 点击打开链接 [算法] tarjan求强连通分量 [代码] #include<bits/stdc++.h> #define MAXN 20005 using namespac ...

随机推荐

  1. 【Android】16.0 UI开发(七)——列表控件RecyclerView的点击事件实现

    1.0 在各布局的基础上,修改ProvinceAdapter.java的代码: package com.example.recyclerviewtest; import android.support ...

  2. Eclipse常用操作

    一 Eclipse常用快捷键 ctrl+Q:跳到最后一次编辑处. ctrl+F:在当前文件中查找并替换. ctrl+T:查看类的继承关系. alt+左箭头:返回到光标的上一个位置. alt+右箭头:前 ...

  3. 申请微信小程序步骤

    一.注册 注册网址:https://mp.weixin.qq.com/ 选择账号类型:选择 小程序 注册账号 填写邮箱密码并激活:未注册过公众平台.开放平台.企业号.未绑定个人号的邮箱. 填写主体信息 ...

  4. vue2.0中的watch和计算属性computed

    watch和computed均可以监控程序员想要监控的对象,当这些对象发生改变之后,可以触发回调函数做一些逻辑处理 watch监控自身属性变化 <!DOCTYPE html> <ht ...

  5. dubbo学习总结三 消费端

    消费端跟服务端类似 注意点是dubbo:reference 和服务端的dubbo:service做区分 消费端主要是处理发送过来的请求

  6. PHP 如何实现网址伪静态

    Apache的 mod_rewrite是比较强大的,在进行网站建设时,可以通过这个模块来实现伪静态. 主要步骤如下: 1.检测Apache是否开启mod_rewrite功能     可以通过php提供 ...

  7. java实现哈弗曼树和哈夫曼树压缩

    本篇博文将介绍什么是哈夫曼树,并且如何在java语言中构建一棵哈夫曼树,怎么利用哈夫曼树实现对文件的压缩和解压.首先,先来了解下什么哈夫曼树. 一.哈夫曼树 哈夫曼树属于二叉树,即树的结点最多拥有2个 ...

  8. python mysql安装

    本文主要介绍不同系统mysql安装 mac安装mysql http://blog.csdn.net/pansanday/article/details/54915916   linux安装mysql ...

  9. .net 面向对象程序设计深入](2)UML

    1.用例图简介 定义:用例图主要用来描述“用户.需求.系统功能单元”之间的关系.它展示了一个外部用户能够观察到的系统功能模型图. 类型:动态图 应用:需求分析阶段 2.用例图元素 2.1 参与者(Ac ...

  10. CVE-2014-0322漏洞成因与利用分析

    CVE-2014-0322漏洞成因与利用分析 1. 简介 此漏洞是UAF(Use After Free)类漏洞,即引用了已经释放的内存,对指定内存处的值进行了加1.其特点在于攻击者结合flash实现了 ...