常州模拟赛d4t1 立方体
题目描述
立方体有 6 个面,每个面上有一只奶牛,每只奶牛都有一些干草。为了训练奶牛的合作精神,它
们在玩一个游戏,每轮:所有奶牛将自己的干草分成 4 等份,分给相邻的 4 个面上的奶牛。
游戏开始,给定每个面上奶牛的干草数量,k 轮游戏后,请问奶牛 Shary 拥有的干草数量是多
少? 奶牛在立方体上编号次序是:前、后、上、下、左、右,奶牛 Shary 在立方体的上面。
如果答案是整数,直接输出;答案可能是分数,用最简分式表示,格式为 X/Y。
例如:一开始 6 个奶牛的干草数量是:0,0,4,0,0,0。Shary 开始有干草数量是 4,其他奶
牛没有。游戏一轮以后,各个奶牛的干草数为:1,1,0,0,1,1;二轮以后各个奶牛的干草数为:
1/2,1/2,1,1,1/2,1/2。
输入输出格式
输入格式:
第一行包含 6 个整数 A i ,表示 6 只奶牛开始时拥有的干草数量。
第二行包含 1 个整数 k,表示游戏要进行的轮数。
输出格式:
如果答案是整数,则答案共一行包含一个整数;如果答案是分数,则答案共一行包含一个最简分
式(无空格)。
输入输出样例
0 0 4 0 0 0 2
1
说明
对于 30% 的数据:保证任意时刻每只奶牛拥有的干草数量为整数;
对于 100% 的数据:0 ≤ A i ≤ 1000,0 ≤ k ≤ 45。
分析:一道大模拟,就是分数加减法,不过要注意每次运算完都必须要约分,而且求最小公倍数要先除后乘,否则会爆long long.
#include <bits/stdc++.h>using namespace std;int k; long long gcd(long long x,long long y) {if (!y)return x;return gcd(y,x % y); }struct node {long long a,b; }e[10];struct node2 {long long a,b; }e2[10];node add(node2 x,node y) {long long temp = gcd(x.b,y.b);long long lcm = x.b / temp * y.b;x.a *= (lcm / x.b);y.a *= (lcm / y.b);node tt;tt.a = x.a + y.a;tt.b = lcm;if (tt.a != 0){long long t = gcd(tt.a,tt.b);tt.a /= t;tt.b /= t;}return tt; }int main() {//前 --- 上下左右 1 3456//后 --- 上下左右 2 3456//上 --- 前后左右 3 1256//下 --- 前后左右 4 1256//左 --- 上下前后 5 1234//右 --- 上下前后 6 1234cin >> e[1].a >> e[2].a >> e[3].a >> e[4].a >> e[5].a >> e[6].a >> k;for (int i = 1; i <= 6; i++)e[i].b = 1;while (k--){for (int i = 1; i <= 6; i++){e2[i].a = e[i].a;e2[i].b = e[i].b;e2[i].b *= 4;e[i].a = 0;e[i].b = 1;//printf("%d %d\n",e2[i].a,e2[i].b);if (e2[i].a != 0){int t = gcd(e2[i].a,e2[i].b);e2[i].a /= t;e2[i].b /= t;}}for (int i = 1; i <= 6; i++){if (i == 1 || i == 2){for (int j = 3; j <= 6; j++){node t = add(e2[i],e[j]);e[j].a = t.a;e[j].b = t.b;}}elseif (i == 3 || i == 4){for (int j = 1; j <= 2; j++){node t = add(e2[i],e[j]);e[j].a = t.a;e[j].b = t.b;}for (int j = 5; j <= 6; j++){node t = add(e2[i],e[j]);e[j].a = t.a;e[j].b = t.b;}}elseif (i == 5 || i == 6){for (int j = 1; j <= 4; j++){node t = add(e2[i],e[j]);e[j].a = t.a;e[j].b = t.b;}}}}if (e[3].a % e[3].b == 0)cout << e[3].a / e[3].b << endl;elsecout << e[3].a << '/' << e[3].b << endl;return 0; }
转载于:https://www.cnblogs.com/zbtrs/p/7424775.html
常州模拟赛d4t1 立方体相关推荐
- 常州模拟赛d3t3 两只怪物心心相印
题目背景 从前我是一位无名的旅人,旅途中我得到了某样东西:贤者之石.我因此得到悠久的时光和漂泊的生命.1897年冬天,我一时兴起舍弃了旅人的生活. 贤者之石创造出来的,是货真价实的黄金.我的名声传遍了 ...
- NOIP模拟赛 17.10.10
初次见面(firstmeet) [题目背景] 雾之湖边,静得可怕. 露米娅出神凝望.黑白连衣裙,像极了绽放的墨黑和洁白的莲.身边的雾之 湖,倒映着血色天空.酒红的双眸,映照一切.低声浅笑,双臂伸直,她 ...
- GMOJ - 2021.07.20【普及组】模拟赛C组 - 排座椅(seat)、传球游戏(ball)、立体图(drawing)、间谍派遣、seek
文章目录 luogu博客链接 GMOJ - 2021.07.20[普及组]模拟赛C组 - 排座椅(seat).传球游戏(ball).立体图(drawing).间谍派遣.seek T1 排座椅(seat ...
- NOI.AC NOIP模拟赛 第六场 游记
NOI.AC NOIP模拟赛 第六场 游记 queen 题目大意: 在一个\(n\times n(n\le10^5)\)的棋盘上,放有\(m(m\le10^5)\)个皇后,其中每一个皇后都可以向上.下 ...
- 2017.6.11 校内模拟赛
题面及数据及std(有本人的也有原来的) :2017.6.11 校内模拟赛 T1 自己在纸上模拟一下后就会发现 可以用栈来搞一搞事情 受了上次zsq 讲的双栈排序的启发.. 具体就是将原盘子大小cop ...
- 2020年蓝桥杯模拟赛2020.3.25直播笔记
2020年蓝桥杯模拟赛解题报告(CPP版本) 第八题 长草的bfs写法[我想暴力模拟O kmn] 深搜会爆 bfs像投到水里的涟漪 问题: const int dx[] = {1, 0, -1, 0} ...
- 2021年 第12届 蓝桥杯 第4次模拟赛真题详解及小结【Java版】
蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[2013年(第4届)~2021年(第12届)] 第11届 蓝桥杯-第1.2次模拟(软件类)真题-(2020年3月.4月)-官方讲解视频 说明:大部 ...
- 2021年 第12届 蓝桥杯 第3次模拟赛真题详解及小结【Java版】
蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[2013年(第4届)~2021年(第12届)] 第11届 蓝桥杯-第1.2次模拟(软件类)真题-(2020年3月.4月)-官方讲解视频 说明:大部 ...
- 蓝桥杯 Java B组 省赛决赛模拟赛 详解及小结汇总+题目下载【2013年(第4届)~2021年(第12届)】
蓝桥杯 Java B组 省赛决赛模拟赛 详解及小结汇总+题目下载[2013年(第4届)~2021年(第12届)] 百度网盘-CSDN蓝桥杯资料(真题PDF+其它资料) 提取码:6666 2013年 ...
最新文章
- 虚拟化--015 配置VMware View Event database失败:
- 深入理解JVM—性能监控工具
- [YTU]_2570 指针练习——变量交换
- 从面试蚂蚁失败反思-缓存穿透技术
- html盒子全部蓝色,彻底弄懂CSS盒子模式之五
- python 西门子交换机_python读取交换机
- solving order
- hlw8012arduino代码_麻雀虽小五脏俱全-liteduino arduino开发板PCB文件
- bootstrap table用法
- re模块或正则表达式
- 富士施乐m115b怎么连接电脑_富士施乐m115b驱动下载
- PHPExcel导出出现白页
- 可以在idle内部执行python命令_2、Python IDLE入门
- 华为m2青春版android7,时尚新体验:华为M2青春版
- 如何做Code Review——读后感
- 7大原因告诉你,为什么IT行业发展前景好
- 论文笔记1《基于ID3决策树改进算法的客户流失预测分析》
- 计算机体系结构——内存
- Qt实现计算器(包含算术运算和逻辑运算),纯干货,一步步超详细过程
- 【黄啊码】tp5+微信小程序商城开发教程
热门文章
- 关键词分词工具_快图制作工具 | 如何制作词云图?
- python3.7打包exe坑_[求助]入坑学习python 需要装pyinstaller打包成exe
- java 隐藏了什么_JAVA程序中封装与隐藏是什么意思
- python 字符串转日期_我总结的130页Python与机器学习之路V1.2.pdf,都是干货!
- c语言指针用法有哪些
- Invalid Gradle JDK configuration found_带你了解Gradle编译速度是如何提升70%的
- 管道在c语言中的作用,在C中实现管道
- 纯净pe工具_微PE工具箱2.0
- 协议转换器的特点有哪些?
- 光纤收发器按照网管怎么分类