【排列顺序判断是否一次交换能得到升序】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");

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

相关推荐
JIAOZHANZHISHIKU2 小时前
机器人外壳粘接性价比怎么选?3M VHB 胶带与结构胶解决方案
经验分享·机器人·工业胶粘剂·3m胶粘剂
C^h4 小时前
c++ string
开发语言·c++
听风说ml4 小时前
socket编程 【C语言】
c语言·udp·tcp·socket编程
sbjdhjd4 小时前
网工进阶笔记:H3CSE 园区网全栈技术与协议汇总
网络·笔记·云计算·ssh·网络工程·vlan·aaa
raindayinrain4 小时前
c++高性能--原子操作,无锁编程,操作顺序
开发语言·c++·性能优化
学逆向的5 小时前
C++ 合并命名空间
开发语言·c++·网络安全
Zhao-Jichao5 小时前
VS2026 打包 C++ 程序生成 EXE,借助 Installer Project 扩展工具
开发语言·c++
学逆向的5 小时前
C 局部静态变量
c语言·开发语言·网络安全
小徐不徐说6 小时前
C++ 接口与插件设计:从工厂注册到 Qt 动态插件
数据库·c++·qt·系统架构·程序设计
大都督会赢的6 小时前
C++第一节课
开发语言·c++