luogu P1146 硬币翻转】的更多相关文章

题目描述 在桌面上有一排硬币,共N枚,每一枚硬币均为正面朝上.现在要把所有的硬币翻转成反面朝上,规则是每次可翻转任意N-1枚硬币(正面向上的被翻转为反面向上,反之亦然).求一个最短的操作序列(将每次翻转N-1枚硬币成为一次操作). 输入输出格式 输入格式: 输入只有一行,包含一个自然数N(N为不大于100的偶数). 输出格式: 输出文件的第一行包含一个整数S,表示最少需要的操作次数.接下来的S行每行分别表示每次操作后桌上硬币的状态(一行包含N个整数(0或1),表示每个硬币的状态:0――正面向上,…
硬币翻转 题目详见:硬币翻转 这道题是一道简单的模拟(其实洛谷标签上说这道题是搜索???),我们只需要每一次从前往后找相同的硬币,直到找到不同的硬币n,然后将找到的前n-1个相同的硬币翻过来,每翻一次让计数器tot+1,直到所有硬币都是正面后输出tot即可. AC代码: #include<iostream> #include<cstdio> #include<cstring> #include<string> #include<cmath> #i…
题目描述 在桌面上有一排硬币,共N枚,每一枚硬币均为正面朝上.现在要把所有的硬币翻转成反面朝上,规则是每次可翻转任意N-1枚硬币(正面向上的被翻转为反面向上,反之亦然).求一个最短的操作序列(将每次翻转N-1枚硬币成为一次操作). 输入输出格式 输入格式: 输入只有一行,包含一个自然数N(N为不大于100的偶数). 输出格式: 输出文件的第一行包含一个整数S,表示最少需要的操作次数.接下来的S行每行分别表示每次操作后桌上硬币的状态(一行包含N个整数(0或1),表示每个硬币的状态:0――正面向上,…
P2708 硬币翻转 题目背景 难度系数:☆☆☆☆☆(如果你看懂了) 题目描述 从前有很多个硬币摆在一行,有正面朝上的,也有背面朝上的.正面朝上的用1表示,背面朝上的用0表示.现在要求从这行的第一个硬币开始,将n个硬币(1<=n<=硬币个数)一起翻面,问如果要将所有硬币翻到正面朝上,最少要进行这样的操作多少次? 输入输出格式 输入格式: 一个字符串(当然不限长度,在字符串范围之内),有0和1组成 输出格式: 要翻转的最少次数 输入输出样例 输入样例#1: 复制 10 输出样例#1: 复制 2…
很久很久之前做过的一道题 翻n-1枚硬币,就是有一枚不翻,也可以理解为翻一枚 直接上程序,看程序说话 #include<iostream> using namespace std; ; bool a[maxn];//a数组负责存储硬币的状态 int n;//n枚硬币 int main(){ cin>>n; cout<<n<<endl;//因为相当于只翻一枚,所以翻n次即可 ;i<=n;i++){//i表示这是第几次翻 ;j<=n;j++)//表示…
题目描述 从前有很多个硬币摆在一行,有正面朝上的,也有背面朝上的.正面朝上的用1表示,背面朝上的用0表示.现在要求从这行的第一个硬币开始,将前若干个硬币一起翻面,问如果要将所有硬币翻到正面朝上,最少要进行这样的操作多少次? 输入格式 一个字符串,由0和1组成,表示硬币状态. 输出格式 一个数,表示要翻转的最少次数. 样例输入 10 样例输出 2…
题目描述 从前有很多个硬币摆在一行,有正面朝上的,也有背面朝上的.正面朝上的用1表示,背面朝上的用0表示.现在要求从这行的第一个硬币开始,将前若干个硬币一起翻面,问如果要将所有硬币翻到正面朝上,最少要进行这样的操作多少次? 输入格式 一个字符串,由0和1组成,表示硬币状态 输出格式 一个数,表示要翻转的最少次数 输入输出样例 输入 #1 复制 10 输出 #1 复制 2 说明/提示 样例1说明: 第1次翻转:把第一个硬币翻到反面,字符串为00 第2次翻转:把第一.二个硬币一起翻到正面,字符串为1…
题意:弱鸡,其实题意是1到i都变化.然后把所有的硬币都变到正面. 简单的模拟: 思路:本质就是记录相邻字符的有几组不同,比如11010,则就有3组不同,但是,这样变化出来的字符串是00000,所以需要最后一次变化. 也就是说需要在最后一次特判. #include<iostream> using namespace std; ; char str[maxn]; int main(){ cin >> str; ]){ ] == << endl; << endl;…
题目传送门 真如题面所说,难度系数:☆☆☆☆☆(如果你看懂了). 从后往前扫一次,如果a[i]==0&&a[i-1]==1那么将ans+2. 注意最后不要忘记开头if(a[0]=='0') ans++; #include<bits/stdc++.h> using namespace std; ];int ans; int main(){ cin>>a; for(int i=strlen(a);i;i--) ]==; ]==') ans++; printf("…
0323,又是一周星期三,按道理该总结了.这周前几天写题比较多,后面事情多了起来,就没怎么写了.主要方向是洛谷的基本语法熟悉,PTA平台数据结构的一些题目. 0323附上: 题目比较多,所以文章可能有点长. 00 0317 00-1 P1116 车厢重组 00-1-1 题目描述 在一个旧式的火车站旁边有一座桥,其桥面可以绕河中心的桥墩水平旋转. 一个车站的职工发现桥的长度最多能容纳两节车厢,如果将桥旋转180度,则可以把相邻两节车厢的位置交换, 用这种方法可以重新排列车厢的顺序.于是他就负责用这…