为了不?【难度:1级】:
答案1:
using System
.Linq
;
public class Kata
{
public static string Order(string input
)
{
string ord
= new string(input
.OrderBy(c
=>c
).ToArray());
string rev
= new string(input
.OrderByDescending(c
=>c
).ToArray());
if (input
== ord
) return "IN ORDER";
if (input
== rev
) return "IN REVERSE ORDER";
return "OUT OF ORDER";
}
}
答案2:
using System
.Linq
;
public class Kata
{
public static string Order(string input
)
{
var str
= new string(input
.ToCharArray().OrderBy(i
=> i
).ToArray());
if (str
== input
)
return "IN ORDER";
else if (new string(input
.ToCharArray().OrderByDescending(i
=> i
).ToArray()) == input
)
{
return "IN REVERSE ORDER";
}
else
return "OUT OF ORDER";
}
}
答案3:
using System
.Globalization
;
public class Kata
{
public static string Order(string input
)
{
char[] inputc
= input
.ToCharArray();
bool tmp
= true;
for(int i
= 0; i
< inputc
.Length
- 1; i
++){
if(char.ToLower(inputc
[i
]) <= char.ToLower(inputc
[i
+1])) tmp
= tmp
&
;&
; true;
else tmp
= false;
}
if (tmp
) return "IN ORDER";
else
{
tmp
= true;
for(int i
= inputc
.Length
- 2; i
> 0; i
--){
if(inputc
[i
] < inputc
[i
+1]) tmp
= false;
}
}
return (tmp
) ? "IN REVERSE ORDER" : "OUT OF ORDER";
}
}
答案4:
using System
;
using System
.Linq
;
public class Kata
{
public static string Order(string input
)
{
string ascendente
= String
.Concat(input
.OrderBy(c
=> c
));
string descendente
= String
.Concat(input
.OrderByDescending(c
=> c
));
if (input
==ascendente
) return "IN ORDER";
if (input
==descendente
) return "IN REVERSE ORDER";
return "OUT OF ORDER";
}
}
答案5:
public class Kata {
public static string Order(string input
) {
var inOrder
= true;
var inReverseOrder
= true;
for (var i
= 1; i
< input
.Length
; i
++) {
inOrder
= inOrder
&
;&
; input
[i
-1] <= input
[i
];
inReverseOrder
= inReverseOrder
&
;&
; input
[i
-1] >= input
[i
];
}
if (inOrder
) return "IN ORDER";
if (inReverseOrder
) return "IN REVERSE ORDER";
return "OUT OF ORDER";
}
}
答案6:
using System
;
using System
.Linq
;
public class Kata
{
public static string Order(string input
)
{
string d
= "";
var y
= input
.OrderBy(x
=> x
);
foreach (char x
in y
)
{
d
+= x
;
}
if (input
.Equals(d
))
{
return "IN ORDER";
}
else if (!input
.Equals(d
))
{
y
= d
.OrderByDescending(x
=> x
);
d
= "";
foreach (char x
in y
)
{
d
+= x
;
}
}
if (input
.Equals(d
))
{
return "IN REVERSE ORDER";
}
else
{
return "OUT OF ORDER";
}
}
}
答案7:
using System
;
using System
.Linq
;
public class Kata
{
public static string Order(string input
)
{
int a
= 1;
int b
= 1;
for(int i
= 1; i
< input
.Length
; i
++)
{
if (input
[i
] >= input
[i
- 1]) a
++;
if (input
[i
] <= input
[i
- 1]) b
++;
}
return a
== input
.Count() ? "IN ORDER" : b
== input
.Count() ? "IN REVERSE ORDER" : "OUT OF ORDER";
}
}
答案8:
using System
;
using System
.Collections
.Generic
;
using System
.Linq
;
public class Kata
{
public static string Order(string input
)
{
if (input
.SequenceEqual(input
.OrderBy(a
=> a
)))
{
return "IN ORDER";
}
else if (input
.SequenceEqual(input
.OrderByDescending(a
=> a
)))
{
return "IN REVERSE ORDER";
}
else
{
return "OUT OF ORDER";
}
}
}
答案9:
using System
;
using System
.Linq
;
public class Kata
{
public static string Order(string input
)
{
Console
.Out
.WriteLine( input
);
int prev
= 0;
bool sorted
= input
.All(c
=>
{
if (c
>= prev
)
{
prev
= c
;
return true;
}
else
return false;
});
prev
= 255;
bool reversed
= input
.All(c
=>
{
if (c
<= prev
)
{
prev
= c
;
return true;
}
else
return false;
});
if (sorted
)
return "IN ORDER";
else if (reversed
)
return "IN REVERSE ORDER";
else
return "OUT OF ORDER";
}
}
答案10:
using System
;
using System
.Linq
;
public class Kata
{
public static string Order(string input
)
{
var chars
= input
.ToCharArray();
if (Enumerable
.SequenceEqual(chars
, chars
.OrderBy(x
=> x
)))
return "IN ORDER";
else if (Enumerable
.SequenceEqual(chars
, chars
.OrderByDescending(x
=> x
)))
return "IN REVERSE ORDER";
else
return "OUT OF ORDER";
}
}
转载请注明原文地址: https://mac.8miu.com/read-485717.html