USACO 1.1.1 YOUR RIDE IS HERE

众所周知,在每一个彗星后都有一只UFO。这些UFO时常来收集地球上的忠诚支持者。不幸的是,他们的飞碟每次出行都只能带上一组支持者。因此,他们要用一种聪明的方案让这些小组提前知道谁会被彗星带走。他们为每个彗星起了一个名字,通过这些名字来决定这个小组是不是被带走的那个特定的小组(你认为是谁给这些彗星取的名字呢?)。关于如何搭配的细节会在下面告诉你;你的任务是写一个程序,通过小组名和彗星名来决定这个小组是否能被那颗彗星后面的UFO带走。

小组名和彗星名都以下列方式转换成一个数字:最终的数字就是名字中所有字母的积,其中“A”是1,“Z”是26。例如,“USACO”小组就是21*19*1*3*15=17955。如果小组的数字 mod 47等于彗星的数字mod 47,你就得告诉这个小组需要准备好被带走!(记住“a mod b”是a除以b的余数;34 mod 10等于4)

写出一个程序,读入彗星名和小组名并算出用上面的方案能否将两个名字搭配起来,如果能搭配,就输出“GO”,否则输出“STAY”。小组名和彗星名均是没有空格或标点的一串大写字母(不超过6个字母)。

输入格式:

第1行:一个长度为1到6的大写字母串,表示彗星的名字。

第2行:一个长度为1到6的大写字母串,表示队伍的名字。

输出格式:

GO或者是STAY。

样例输入1

COMETQ
HVNGAT

样例输出1

GO

样例输入2

ABSTAR
USACO

样例输出2

STAY

这题不愧是USACO1.1.1,比较水,但是很适合初学者。

做法:n的范围是非常小的,模拟即可:

#include <stdio.h>
#include <string.h>
#define MODE 47
int main()
{
    freopen("ride.in","r",stdin);
    freopen("ride.out","w",stdout);
    char a[8],b[8];
    scanf("%s%s",a,b);
    int lena=strlen(a);
    int lenb=strlen(b);
    int tota=1,totb=1;
    for(int i=0;i<lena;i++)
        tota=(tota*(a[i]-‘A‘+1))%MODE;
    for(int i=0;i<lenb;i++)
        totb=(totb*(b[i]-‘A‘+1))%MODE;
    if(tota!=totb)
        printf("%s\n","STAY");
    else
        printf("%s\n","GO");
    fclose(stdin);
    fclose(stdout);
    return 0;
}

  另外可以加上同余,不过事实证明不加同余也没有问题。如果只有遇到数据范围大的题目就要加上同余了

#include <stdio.h>
#include <string.h>
#define MODE 47
int main()
{
// freopen("ride.in","r",stdin);
// freopen("ride.out","w",stdout);
    char a[8],b[8];
    scanf("%s",a);
    scanf("%s",b);
    int lena=strlen(a);
    int lenb=strlen(b);
    int tota=1,totb=1;
    for(int i=0;i<lena;i++)
    {
        tota=(tota*(a[i]-‘A‘+1))%MODE;
    }
    for(int i=0;i<lenb;i++)
    {
        totb=(totb*(b[i]-‘A‘+1))%MODE;
    }
    if(tota!=totb)
    {
        printf("%s\n","STAY");
    }
    else
    {
        printf("%s\n","GO");
    }
// fclose(stdin);
// fclose(stdout);
    return 0;
}

时间: 2024-11-08 20:53:36

USACO 1.1.1 YOUR RIDE IS HERE的相关文章

USACO Section 1.1 Your Ride Is Here

原题: Your Ride Is Here It is a well-known fact that behind every good comet is a UFO. These UFOs often come to collect loyal supporters from here on Earth. Unfortunately, they only have room to pick up one group of followers on each trip. They do, how

USACO Section 1.1PROB Your Ride Is Here

题目传送门 不能提交哦   http://www.nocow.cn/index.php/Translate:USACO/ride /* ID: jusonal1 PROG: ride LANG: C++ */ #include <iostream> #include <fstream> #include <string> #include <cstdio> #include <algorithm> using namespace std; int

USACO CHAPTER 1 1.1 Ride 水题

水题,主要是学习文件输入输出. 1 /* 2 ID: ijustwa1 3 LANG: C++ 4 TASK: ride 5 */ 6 #include<cstdio> 7 #include<cstring> 8 9 using namespace std; 10 11 const int base=16; 12 const int mod=47; 13 14 char s[10]; 15 char t[10]; 16 17 int main() 18 { 19 FILE *fin

USACO Your Ride Is Here

[USACO]Your Ride Is Here It is a well-known fact that behind every good comet is a UFO. These UFOs often come to collect loyal supporters from here on Earth. Unfortunately, they only have room to pick up one group of followers on each trip. They do,

【USACO】Your Ride Is Here

熟悉一下USACO的提交方式. 很简单的一个题目,知道ascii码表就行. /*{ ID:summer jy PROG:ride LANG:C++ }*/ #include <iostream> #include <algorithm> #include <cstdlib> #include <cstdio> #include <string> #include <cstring> #include <cmath> #in

USACO 1.1 Your Ride Is Here

Your Ride Is Here It is a well-known fact that behind every good comet is a UFO. These UFOs often come to collect loyal supporters from here on Earth. Unfortunately, they only have room to pick up one group of followers on each trip. They do, however

USACO Chapter 1 Section 1.1

USACO的题解和翻译已经很多了... 我只是把自己刷的代码保存一下. 1.PROB Your Ride Is Here 1 /* 2 ID:xiekeyi1 3 PROG:ride 4 LANG:C++ 5 */ 6 7 #include<bits/stdc++.h> 8 using namespace std ; 9 10 int main() 11 { 12 freopen("ride.in","r",stdin); 13 freopen(&quo

USACO1.1--Your Ride Is Here +水题

完全是一道水题,主要是熟悉了一下USACO的文件操作. 话说这也是这个学期的第一道题,希望这次自己能完完全全的实行好计划,能够好好的坚持下去,否则的话恐怕真的是前途堪忧了..... 加油!!! 代码如下: /* ID: 15674811 LANG: C++ TASK: ride */ #include<iostream> #include<cstring> #include<fstream> using namespace std; int main() { ofstr

【USACO 1.1】你的飞碟在这儿

[问题描述] 一个众所周知的事实,在每一慧星后面是一个不明飞行物UFO. 这些不明飞行物时常来收集来自在地球上忠诚的支持者. 不幸地,他们的空间在每次旅行只能带上一群支持者. 他们要做的是用一种聪明的方案让每一个团体人被慧星带走.他们为每个慧星起了一个名字,通过这些名字来决定一个团体是不是特定的慧星带走. 那个相配方案的细节在下面被给出: 你的工作要写一个程序来通过团体的名字和彗星的名字来决定一个组是否应该与在那一颗慧星后面的不明飞行物搭配. 团体的名字和慧星的名字都以下列各项方式转换成一个数字