当前位置:网站首页>题解:《你的飞碟在这儿》、《哥德巴赫猜想》
题解:《你的飞碟在这儿》、《哥德巴赫猜想》
2022-07-02 10:09:00 【潘道熹】
文章目录
[USACO1.1]你的飞碟在这儿Your Ride Is Here
题目描述
众所周知,在每一个彗星后都有一只UFO。这些UFO时常来收集地球上的忠诚支持者。不幸的是,他们的飞碟每次出行都只能带上一组支持者。因此,他们要用一种聪明的方案让这些小组提前知道谁会被彗星带走。他们为每个彗星起了一个名字,通过这些名字来决定这个小组是不是被带走的那个特定的小组(你认为是谁给这些彗星取的名字呢?)。关于如何搭配的细节会在下面告诉你;你的任务是写一个程序,通过小组名和彗星名来决定这个小组是否能被那颗彗星后面的UFO带走。
小组名和彗星名都以下列方式转换成一个数字:最终的数字就是名字中所有字母的积,其中 A A A是 1 1 1, Z Z Z是 26 26 26。例如, U S A C O USACO USACO小组就是 21 × 19 × 1 × 3 × 15 = 17955 21 \times 19 \times 1 \times 3 \times 15=17955 21×19×1×3×15=17955。如果小组的数字$ \bmod 47 等 于 彗 星 的 数 字 等于彗星的数字 等于彗星的数字 \bmod 47 , 你 就 得 告 诉 这 个 小 组 需 要 准 备 好 被 带 走 ! ( 记 住 “ ,你就得告诉这个小组需要准备好被带走!(记住“ ,你就得告诉这个小组需要准备好被带走!(记住“a \bmod b ” 是 ”是 ”是a 除 以 除以 除以b$的余数; 34 m o d 10 34 \bmod 10 34mod10等于 4 4 4)
写出一个程序,读入彗星名和小组名并算出用上面的方案能否将两个名字搭配起来,如果能搭配,就输出“GO”,否则输出“STAY”。小组名和彗星名均是没有空格或标点的一串大写字母(不超过 6 6 6个字母)。
输入格式
第1行:一个长度为 1 1 1到 6 6 6的大写字母串,表示彗星的名字。
第2行:一个长度为 1 1 1到 6 6 6的大写字母串,表示队伍的名字。
输出格式
样例 #1
样例输入 #1
COMETQ
HVNGAT
样例输出 #1
GO
样例 #2
样例输入 #2
ABSTAR
USACO
样例输出 #2
STAY
提示
题目翻译来自NOCOW。
USACO Training Section 1.1
题解
一道比较简单的题目,直接上程序吧!
// Author:PanDaoxi
#include <iostream>
using namespace std;
int main(){
int x=1,y=1;
string s1,s2;
cin>>s1>>s2;
for(int i=0;i<s1.size();i++){
x*=s1[i]-'A'+1;
}
for(int i=0;i<s2.size();i++){
y*=s2[i]-'A'+1;
}
cout<<(x%47==y%47?"GO":"STAY");
return 0;
}
哥德巴赫猜想
题目描述
输入一个偶数 N ( N < = 10000 ) N(N<=10000) N(N<=10000),验证4~N所有偶数是否符合哥德巴赫猜想:任一大于 2 的偶数都可写成两个质数之和。如果一个数不止一种分法,则输出第一个加数相比其他分法最小的方案。例如 10,10=3+7=5+5,则 10=5+5 是错误答案。
输入格式
第一行N
输出格式
4=2+2
6=3+3
……
N=x+y
样例 #1
样例输入 #1
10
样例输出 #1
4=2+2
6=3+3
8=3+5
10=3+7
题解
这个题目有点儿意思。先上代码:
// Author:PanDaoxi
#include <iostream>
using namespace std;
int a[1229]={
2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997,1009,1013,1019,1021,1031,1033,1039,1049,1051,1061,1063,1069,1087,1091,1093,1097,1103,1109,1117,1123,1129,1151,1153,1163,1171,1181,1187,1193,1201,1213,1217,1223,1229,1231,1237,1249,1259,1277,1279,1283,1289,1291,1297,1301,1303,1307,1319,1321,1327,1361,1367,1373,1381,1399,1409,1423,1427,1429,1433,1439,1447,1451,1453,1459,1471,1481,1483,1487,1489,1493,1499,1511,1523,1531,1543,1549,1553,1559,1567,1571,1579,1583,1597,1601,1607,1609,1613,1619,1621,1627,1637,1657,1663,1667,1669,1693,1697,1699,1709,1721,1723,1733,1741,1747,1753,1759,1777,1783,1787,1789,1801,1811,1823,1831,1847,1861,1867,1871,1873,1877,1879,1889,1901,1907,1913,1931,1933,1949,1951,1973,1979,1987,1993,1997,1999,2003,2011,2017,2027,2029,2039,2053,2063,2069,2081,2083,2087,2089,2099,2111,2113,2129,2131,2137,2141,2143,2153,2161,2179,2203,2207,2213,2221,2237,2239,2243,2251,2267,2269,2273,2281,2287,2293,2297,2309,2311,2333,2339,2341,2347,2351,2357,2371,2377,2381,2383,2389,2393,2399,2411,2417,2423,2437,2441,2447,2459,2467,2473,2477,2503,2521,2531,2539,2543,2549,2551,2557,2579,2591,2593,2609,2617,2621,2633,2647,2657,2659,2663,2671,2677,2683,2687,2689,2693,2699,2707,2711,2713,2719,2729,2731,2741,2749,2753,2767,2777,2789,2791,2797,2801,2803,2819,2833,2837,2843,2851,2857,2861,2879,2887,2897,2903,2909,2917,2927,2939,2953,2957,2963,2969,2971,2999,3001,3011,3019,3023,3037,3041,3049,3061,3067,3079,3083,3089,3109,3119,3121,3137,3163,3167,3169,3181,3187,3191,3203,3209,3217,3221,3229,3251,3253,3257,3259,3271,3299,3301,3307,3313,3319,3323,3329,3331,3343,3347,3359,3361,3371,3373,3389,3391,3407,3413,3433,3449,3457,3461,3463,3467,3469,3491,3499,3511,3517,3527,3529,3533,3539,3541,3547,3557,3559,3571,3581,3583,3593,3607,3613,3617,3623,3631,3637,3643,3659,3671,3673,3677,3691,3697,3701,3709,3719,3727,3733,3739,3761,3767,3769,3779,3793,3797,3803,3821,3823,3833,3847,3851,3853,3863,3877,3881,3889,3907,3911,3917,3919,3923,3929,3931,3943,3947,3967,3989,4001,4003,4007,4013,4019,4021,4027,4049,4051,4057,4073,4079,4091,4093,4099,4111,4127,4129,4133,4139,4153,4157,4159,4177,4201,4211,4217,4219,4229,4231,4241,4243,4253,4259,4261,4271,4273,4283,4289,4297,4327,4337,4339,4349,4357,4363,4373,4391,4397,4409,4421,4423,4441,4447,4451,4457,4463,4481,4483,4493,4507,4513,4517,4519,4523,4547,4549,4561,4567,4583,4591,4597,4603,4621,4637,4639,4643,4649,4651,4657,4663,4673,4679,4691,4703,4721,4723,4729,4733,4751,4759,4783,4787,4789,4793,4799,4801,4813,4817,4831,4861,4871,4877,4889,4903,4909,4919,4931,4933,4937,4943,4951,4957,4967,4969,4973,4987,4993,4999,5003,5009,5011,5021,5023,5039,5051,5059,5077,5081,5087,5099,5101,5107,5113,5119,5147,5153,5167,5171,5179,5189,5197,5209,5227,5231,5233,5237,5261,5273,5279,5281,5297,5303,5309,5323,5333,5347,5351,5381,5387,5393,5399,5407,5413,5417,5419,5431,5437,5441,5443,5449,5471,5477,5479,5483,5501,5503,5507,5519,5521,5527,5531,5557,5563,5569,5573,5581,5591,5623,5639,5641,5647,5651,5653,5657,5659,5669,5683,5689,5693,5701,5711,5717,5737,5741,5743,5749,5779,5783,5791,5801,5807,5813,5821,5827,5839,5843,5849,5851,5857,5861,5867,5869,5879,5881,5897,5903,5923,5927,5939,5953,5981,5987,6007,6011,6029,6037,6043,6047,6053,6067,6073,6079,6089,6091,6101,6113,6121,6131,6133,6143,6151,6163,6173,6197,6199,6203,6211,6217,6221,6229,6247,6257,6263,6269,6271,6277,6287,6299,6301,6311,6317,6323,6329,6337,6343,6353,6359,6361,6367,6373,6379,6389,6397,6421,6427,6449,6451,6469,6473,6481,6491,6521,6529,6547,6551,6553,6563,6569,6571,6577,6581,6599,6607,6619,6637,6653,6659,6661,6673,6679,6689,6691,6701,6703,6709,6719,6733,6737,6761,6763,6779,6781,6791,6793,6803,6823,6827,6829,6833,6841,6857,6863,6869,6871,6883,6899,6907,6911,6917,6947,6949,6959,6961,6967,6971,6977,6983,6991,6997,7001,7013,7019,7027,7039,7043,7057,7069,7079,7103,7109,7121,7127,7129,7151,7159,7177,7187,7193,7207,7211,7213,7219,7229,7237,7243,7247,7253,7283,7297,7307,7309,7321,7331,7333,7349,7351,7369,7393,7411,7417,7433,7451,7457,7459,7477,7481,7487,7489,7499,7507,7517,7523,7529,7537,7541,7547,7549,7559,7561,7573,7577,7583,7589,7591,7603,7607,7621,7639,7643,7649,7669,7673,7681,7687,7691,7699,7703,7717,7723,7727,7741,7753,7757,7759,7789,7793,7817,7823,7829,7841,7853,7867,7873,7877,7879,7883,7901,7907,7919,7927,7933,7937,7949,7951,7963,7993,8009,8011,8017,8039,8053,8059,8069,8081,8087,8089,8093,8101,8111,8117,8123,8147,8161,8167,8171,8179,8191,8209,8219,8221,8231,8233,8237,8243,8263,8269,8273,8287,8291,8293,8297,8311,8317,8329,8353,8363,8369,8377,8387,8389,8419,8423,8429,8431,8443,8447,8461,8467,8501,8513,8521,8527,8537,8539,8543,8563,8573,8581,8597,8599,8609,8623,8627,8629,8641,8647,8663,8669,8677,8681,8689,8693,8699,8707,8713,8719,8731,8737,8741,8747,8753,8761,8779,8783,8803,8807,8819,8821,8831,8837,8839,8849,8861,8863,8867,8887,8893,8923,8929,8933,8941,8951,8963,8969,8971,8999,9001,9007,9011,9013,9029,9041,9043,9049,9059,9067,9091,9103,9109,9127,9133,9137,9151,9157,9161,9173,9181,9187,9199,9203,9209,9221,9227,9239,9241,9257,9277,9281,9283,9293,9311,9319,9323,9337,9341,9343,9349,9371,9377,9391,9397,9403,9413,9419,9421,9431,9433,9437,9439,9461,9463,9467,9473,9479,9491,9497,9511,9521,9533,9539,9547,9551,9587,9601,9613,9619,9623,9629,9631,9643,9649,9661,9677,9679,9689,9697,9719,9721,9733,9739,9743,9749,9767,9769,9781,9787,9791,9803,9811,9817,9829,9833,9839,9851,9857,9859,9871,9883,9887,9901,9907,9923,9929,9931,9941,9949,9967,9973};
void write(int n){
for(int i=0;i<1229;i++){
for(int j=0;j<1229;j++){
if(a[i]+a[j]==n){
cout<<n<<"="<<a[i]<<"+"<<a[j]<<endl;
return;
}
}
}
}
int main(){
int n;
cin>>n;
for(int i=4;i<=n;i++){
if(i%2) continue;
write(i);
}
return 0;
}
我打了一个表儿,你看这个a
数组那么长,我们是靠程序来算出来的,要是全都挤在一起太慢了。
打表儿的程序:
// Author:PanDaoxi
#include <iostream>
using namespace std;
int a[1229];
void create(){
int k=0;
for(int i=2;i<=10000;i++){
bool flag=true;
for(int j=2;j<i;j++){
if(i%j==0) flag=false;
}
if(flag) a[k++]=i;
}
return;
}
int main(){
create();
for(int i=0;i<1229;i++){
cout<<a[i]<<",";
}
return 0;
}
这样我们就拿到了10000以内所有的质数。我们看啊,现在只需要写一个函数(从小到大查找符合要求的数)来帮忙即可。
关于我怎么知道1~10000有1229个质数这件事,我告诉你我是背的。
边栏推荐
- How to get the operating system running PHP- How to get the OS on which PHP is running?
- Explanation of 34 common terms on the Internet
- Unity SKFramework框架(十七)、FreeCameraController 上帝视角/自由视角相机控制脚本
- Web Foundation
- 2022零代码/低代码开发白皮书【伙伴云出品】附下载
- 中文姓名提取(玩具代码——准头太小,权当玩闹)
- Jerry's watch delete alarm clock [chapter]
- OLED screen driver based on stm32
- Principle analysis of security rememberme
- Clean up system cache and free memory under Linux
猜你喜欢
Lucky numbers in the [leetcode daily question] matrix
How can attribute mapping of entity classes be without it?
What are eNB, EPC and PGW?
[200 opencv routines] 100 Adaptive local noise reduction filter
屠榜多目标跟踪!BoT-SORT:稳健的关联多行人跟踪
Unity skframework framework (XV), singleton singleton
Jerry's watch time synchronization [chapter]
Counter attack of flour dregs: MySQL 66 questions, 20000 words + 50 pictures in detail! A little six
Unity SKFramework框架(二十)、VFX Lab 特效库
Jerry's watch ringtone audition [article]
随机推荐
Word efficiency guide - word's own template
[Unity]使用GB2312,打包后程序不正常解决方案
TVOC, VOC, VOCs gas detection + Solution
The redis development document released by Alibaba covers all redis operations
EasyDSS点播服务分享时间出错如何修改?
D如何检查null
Can automatically update the universal weekly report template, you can use it with your hand!
OLED screen driver based on stm32
【OpenGL】笔记二十九、高级光照(镜面高光)
PR usage skills, how to use PR to watermark?
[error record] cannot open "XXX" because Apple cannot check whether it contains malware
[indomitable medal activity] life goes on and writing goes on
Unity skframework framework (XIV), extension extension function
SSL证书的分类有哪些?如何选择合适的SSL证书?
MySQL: Invalid GIS data provided to function st_ geometryfromtext
OpenApi-Generator:简化RESTful API开发流程
Explain in detail the process of realizing Chinese text classification by CNN
二、帧模式 MPLS 操作
无向图的桥
ADB basic commands