【排列顺序判断是否一次交换能得到升序】2025-1-28

缘由关于#c语言#的问题:西奥特这里有三张卡片 上写着字母A,B,C_编程语言-CSDN问答

西奥特这里有三张卡片 上写着字母A,B,C西奥特想要把他们按一定顺序排在一排上. 并且最多只能执行一次下面的操作:选中两张卡片, 交换他们.西奥特想知道有没有可能将自己手里的卡牌排成 abc?如果可能输出"YES",否则输出"NO"

面条在夜晚睡觉时,总是被一段循环重复的歌声吵醒。他仔细聆听后发现,这段歌声实际上由三个音节不断重复组成。面条对歌声有自己的审美标准:如果这三个音节的音调是严格升序排列(从小到大),他会认为这是一段美的歌声;如果歌声不满足升序,但通过一次交换就能变成升序,他会认为这段歌声普通;如果以上两种情况都不满足,则面条会认为这段歌声简直是噪音。

现在,给定三个音节的音调,请你判断这段歌声是否符合面条的审美,并输出他的评价。

输入格式

输入共一行,包含三个非负整数,表示三个音节的音调。保证三个音调各不相同。

输出格式

输出一行,一个字符串,表示面条对这段歌声的评价:如果歌声是美的,输出 graceful;

如果歌声是普通的,输出 normal;

如果歌声是噪音,输出 noisy。

input1

复制代码

1 4 2

output1

复制代码

normal

数据规模与约定

对于100% 的数据,保证输入的三个音调为不超过100 的非负整数,并且三个音调互不相同。

cpp 复制代码
	std::string a, aa; char t = 0;
	std::cin >> a;
	if (a == "abc")std::cout << "Yes\n";
	else {
		aa = a, t = aa[0], aa[0] = aa[1], aa[1] = t;
		if (aa == "abc")std::cout << "Yes\n";
		else {
			aa = a, t = aa[0], aa[0] = aa[2], aa[2] = t;
			if (aa == "abc")std::cout << "Yes\n";
			else {
				aa = a, t = aa[1], aa[1] = a[2], aa[2] = t;
				if (aa == "abc")std::cout << "Yes\n";
				else std::cout << "No\n";
			}
		}
	}
cpp 复制代码
	std::string a, aa; char t = 0; bool k = 0;
	std::cin >> a; aa = a;
	if (a == "abc")k = 1;
	else a = aa, t = a[0], a[0] = a[1], a[1] = t;
	if (a == "abc")k = 1;
	else a = aa, t = a[0], a[0] = a[2], a[2] = t;
	if (a == "abc")k = 1;
	else a = aa, t = a[1], a[1] = a[2], a[2] = t;
	if (a == "abc")k = 1;
	std::cout << (k ? "Yes\n" : "No\n");
cpp 复制代码
	std::string a, aa; char t = 0;
	bool k = 0; int j = 0;
	std::cin >> a; aa = a;
pd:if (a == "abc"){ k = 1; goto sc; }
   else
   {
	   ++j;
	   if (j == 1)a = aa, t = a[0], a[0] = a[1], a[1] = t;
	   else if (j == 2)a = aa, t = a[0], a[0] = a[2], a[2] = t;
	   else a = aa, t = a[1], a[1] = a[2], a[2] = t;
	   if (j < 3)goto pd;
   }
	sc:std::cout << (k ? "Yes\n" : "No\n");

歪头山山头不正,觅月水水月不见。

相关推荐
2601_962218614 分钟前
万象生鲜系统订单全生命周期状态同步技术实现业务可视
大数据·数据库·人工智能·python·算法
那年窗外下的雪.29 分钟前
AIDC 学习日志|第 22 天|All-Active/Single-Active 故障演练设计
服务器·网络·学习·算法·哈希算法
m0_7345717637 分钟前
深入理解C++ 析构函数<一>基本概念
开发语言·c++
wzdark1 小时前
基于启发式搜索的最优路径规划算法研究4
算法
动词ing1 小时前
【学习笔记】数据结构栈与队列(栈先进后出+队列先进先出+括号匹配+消消乐模型)
数据结构·笔记·学习
l1t2 小时前
用superpi、tinypi、tpi等工具计算圆周率的比较
c语言·算法
彧azz2 小时前
Git 入门实操实例:从安装到远程仓库全流程
大数据·笔记·git·学习·elasticsearch
t-think2 小时前
C++ string 类(上)—— string类初识与常用接口详解
开发语言·c++
a187927218312 小时前
【算法】链表(二):链表上的双指针——变速、异链与定距,和一份路程账本
数据结构·算法·leetcode·链表·go·指针·环形链表
cpp_learners2 小时前
C++ 实现责任链模式(Chain of Responsibility):从一堆 if-else 到可插拔的处理管道
开发语言·c++·责任链模式